Update match-if-let.md

修复代码缺失和错别字
pull/114/head
Mr.zhang 3 years ago committed by GitHub
parent 718c89ea91
commit 4178bd9a8d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -277,7 +277,7 @@ enum MyEnum {
}
fn main() {
let v = vec![MyEnum::Foo,MyEnum::Bar,MyEnum::F
let v = vec![MyEnum::Foo,MyEnum::Bar,MyEnum::Foo];
}
```
@ -286,7 +286,7 @@ fn main() {
v.iter().filter(|x| x == MyEnum:::Foo);
```
但是,实际上这行代码会保存,因为你无法将`x`跟一个类型进行比较。好在,你可以使用`match`来完成,但是会导致代码更为啰嗦,是否有更简洁的方式?答案是使用`matches!`:
但是,实际上这行代码会报错,因为你无法将`x`跟一个类型进行比较。好在,你可以使用`match`来完成,但是会导致代码更为啰嗦,是否有更简洁的方式?答案是使用`matches!`:
```rust
v.iter().filter(|x| matches!(x, MyEnum::Foo));
```
@ -336,4 +336,4 @@ fn main() {
}
```
需要注意的是,**`match`中的变量覆盖其实不是那么的容易看出**,因此要小心!
需要注意的是,**`match`中的变量覆盖其实不是那么的容易看出**,因此要小心!

Loading…
Cancel
Save