mirror of
https://github.com/KaiserY/trpl-zh-cn
synced 2024-11-09 08:51:18 +08:00
Update ch04-01-what-is-ownership.md
【目的是...为了...】是病句,保留其一即可。
This commit is contained in:
parent
9dbaf37609
commit
f354c53f21
@ -25,7 +25,7 @@ Rust 的核心功能(之一)是 **所有权**(*ownership*)。虽然该
|
||||
>
|
||||
> 当你的代码调用一个函数时,传递给函数的值(包括可能指向堆上数据的指针)和函数的局部变量被压入栈中。当函数结束时,这些值被移出栈。
|
||||
>
|
||||
> 跟踪哪部分代码正在使用堆上的哪些数据,最大限度的减少堆上的重复数据的数量,以及清理堆上不再使用的数据确保不会耗尽空间,这些问题正是所有权系统要处理的。一旦理解了所有权,你就不需要经常考虑栈和堆了,不过明白了所有权的主要目的就是为了管理堆数据,能够帮助解释为什么所有权要以这种方式工作。
|
||||
> 跟踪哪部分代码正在使用堆上的哪些数据,最大限度的减少堆上的重复数据的数量,以及清理堆上不再使用的数据确保不会耗尽空间,这些问题正是所有权系统要处理的。一旦理解了所有权,你就不需要经常考虑栈和堆了,不过明白了所有权的主要目的就是管理堆数据,能够帮助解释为什么所有权要以这种方式工作。
|
||||
|
||||
### 所有权规则
|
||||
|
||||
@ -72,7 +72,7 @@ let s = "hello";
|
||||
let s = String::from("hello");
|
||||
```
|
||||
|
||||
这两个冒号 `::` 是运算符,允许将特定的 `from` 函数置于 `String` 类型的命名空间(namespace)下,而不需要使用类似 `string_from` 这样的名字。在第五章的 [“方法语法”(“Method Syntax”)][method-syntax] 部分会着重讲解这个语法而且在第七章的 [“路径用于引用模块树中的项”][paths-module-tree] 中会讲到模块的命名空间。
|
||||
这两个冒号 `::` 是运算符,允许将特定的 `from` 函数置于 `String` 类型的命名空间(namespace)下,而不需要使用类似 `string_from` 这样的名字。在第五章的 [“方法语法”(“Method Syntax”)][method-syntax] 部分会着重讲解这个语法,而且在第七章的 [“路径用于引用模块树中的项”][paths-module-tree] 中会讲到模块的命名空间。
|
||||
|
||||
**可以** 修改此类字符串:
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user