From 6917b9f43cf870df344ba9de1dd3ea370b55f495 Mon Sep 17 00:00:00 2001 From: Hobart Zhi-xin Lin Date: Sun, 16 Apr 2023 17:09:51 +0800 Subject: [PATCH] =?UTF-8?q?Update=20string-slice.md:=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E5=AF=B9=20`+`=E3=80=81`+=3D`=20=E7=9A=84=E9=94=99=E8=AF=AF?= =?UTF-8?q?=E6=8F=8F=E8=BF=B0=EF=BC=8C=E5=B9=B6=E6=B7=BB=E5=8A=A0=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/basic/compound-type/string-slice.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/basic/compound-type/string-slice.md b/src/basic/compound-type/string-slice.md index 6b950aea..a0de57c9 100644 --- a/src/basic/compound-type/string-slice.md +++ b/src/basic/compound-type/string-slice.md @@ -498,7 +498,7 @@ string_clear = "" 1、使用 `+` 或者 `+=` 连接字符串 -使用 `+` 或者 `+=` 连接字符串,要求右边的参数必须为字符串的切片引用(Slice)类型。其实当调用 `+` 的操作符时,相当于调用了 `std::string` 标准库中的 [`add()`](https://doc.rust-lang.org/std/string/struct.String.html#method.add) 方法,这里 `add()` 方法的第二个参数是一个引用的类型。因此我们在使用 `+`, 必须传递切片引用类型。不能直接传递 `String` 类型。**`+` 和 `+=` 都是返回一个新的字符串。所以变量声明可以不需要 `mut` 关键字修饰**。 +使用 `+` 或者 `+=` 连接字符串,要求右边的参数必须为字符串的切片引用(Slice)类型。其实当调用 `+` 的操作符时,相当于调用了 `std::string` 标准库中的 [`add()`](https://doc.rust-lang.org/std/string/struct.String.html#method.add) 方法,这里 `add()` 方法的第二个参数是一个引用的类型。因此我们在使用 `+`, 必须传递切片引用类型。不能直接传递 `String` 类型。**`+` 是返回一个新的字符串,所以变量声明可以不需要 `mut` 关键字修饰**。 示例代码如下: @@ -508,7 +508,7 @@ fn main() { let string_rust = String::from("rust"); // &string_rust会自动解引用为&str let result = string_append + &string_rust; - let mut result = result + "!"; + let mut result = result + "!"; // `result + "!"` 中的 `result` 是不可变的 result += "!!!"; println!("连接字符串 + -> {}", result);