From 4178bd9a8dce7d1ffb20ead72babf02f11cd5583 Mon Sep 17 00:00:00 2001 From: "Mr.zhang" Date: Sat, 1 Jan 2022 23:06:28 +0800 Subject: [PATCH] Update match-if-let.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复代码缺失和错别字 --- course-book/contents/basic/match-pattern/match-if-let.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/course-book/contents/basic/match-pattern/match-if-let.md b/course-book/contents/basic/match-pattern/match-if-let.md index bcfb9fc6..4ca5b69d 100644 --- a/course-book/contents/basic/match-pattern/match-if-let.md +++ b/course-book/contents/basic/match-pattern/match-if-let.md @@ -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`中的变量覆盖其实不是那么的容易看出**,因此要小心! \ No newline at end of file +需要注意的是,**`match`中的变量覆盖其实不是那么的容易看出**,因此要小心!