From 33b65db2705eff2880d0ff827aa7d0429d579104 Mon Sep 17 00:00:00 2001 From: YangQi <70502828+YangFong@users.noreply.github.com> Date: Thu, 13 Jan 2022 23:32:01 +0800 Subject: [PATCH] doc: Optimize the description at ch10-00 --- src/ch10-00-generics.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ch10-00-generics.md b/src/ch10-00-generics.md index cf72894..4d9bd7f 100644 --- a/src/ch10-00-generics.md +++ b/src/ch10-00-generics.md @@ -12,7 +12,7 @@ ## 提取函数来减少重复 -在介绍泛型语法之前,首先来回顾一个不使用泛型的处理重复的技术:提取一个函数。当熟悉了这个技术以后,我们将使用相同的机制来提取一个泛型函数!如同你识别出可以提取到函数中重复代码那样,你也会开始识别出能够使用泛型的重复代码。 +在介绍泛型语法之前,首先来回顾一个不使用泛型处理重复的技术:提取一个函数。当熟悉了这个技术以后,我们将使用相同的机制来提取一个泛型函数!如同你识别出可以提取到函数中重复代码那样,你也会开始识别出能够使用泛型的重复代码。 考虑一下这个寻找列表中最大值的小程序,如示例 10-1 所示: @@ -111,7 +111,7 @@ fn main() { 示例 10-3:抽象后的寻找两个数字列表最大值的代码 -`largest` 函数有一个参数 `list`,它代表会传递给函数的任何具体的 `i32`值的 slice。函数定义中的 `list` 代表任何 `&[i32]`。当调用 `largest` 函数时,其代码实际上运行于我们传递的特定值上。 +`largest` 函数有一个参数 `list`,它代表会传递给函数的任何具体的 `i32` 值的 slice。函数定义中的 `list` 代表任何 `&[i32]`。当调用 `largest` 函数时,其代码实际上运行于我们传递的特定值上。 总的来说,从示例 10-2 到示例 10-3 中涉及的机制经历了如下几步: @@ -119,6 +119,6 @@ fn main() { 2. 将重复代码提取到了一个函数中,并在函数签名中指定了代码中的输入和返回值。 3. 将重复代码的两个实例,改为调用函数。 -在不同的场景使用不同的方式,我们也可以利用相同的步骤和泛型来减少重复代码。与函数体可以在抽象`list`而不是特定值上操作的方式相同,泛型允许代码对抽象类型进行操作。 +在不同的场景使用不同的方式,我们也可以利用相同的步骤和泛型来减少重复代码。与函数体可以在抽象 `list` 而不是特定值上操作的方式相同,泛型允许代码对抽象类型进行操作。 -如果我们有两个函数,一个寻找一个 `i32` 值的 slice 中的最大项而另一个寻找 `char` 值的 slice 中的最大项该怎么办?该如何消除重复呢?让我们拭目以待! +如果我们有两个函数,一个寻找 `i32` 值的 slice 中的最大项,而另一个寻找 `char` 值的 slice 中的最大项,该怎么办?该如何消除重复呢?让我们拭目以待!