Merge pull request #114 from zhanglolo/patch-3

Update match-if-let.md
pull/126/head
Sunface 3 years ago committed by GitHub
commit 80dcb30f08
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -278,7 +278,7 @@ enum MyEnum {
}
fn main() {
let v = vec![MyEnum::Foo,MyEnum::Bar,MyEnum::F
let v = vec![MyEnum::Foo,MyEnum::Bar,MyEnum::Foo];
}
```
@ -287,7 +287,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));
```
@ -337,4 +337,4 @@ fn main() {
}
```
需要注意的是,**`match`中的变量覆盖其实不是那么的容易看出**,因此要小心!
需要注意的是,**`match`中的变量覆盖其实不是那么的容易看出**,因此要小心!

Loading…
Cancel
Save