fix translation about Copy

...and nothing that requires allocation or is some form of resource is `Copy`.
This commit is contained in:
Librazy 2017-08-02 22:47:52 +08:00
parent fbebbe75e6
commit 6a7be5d144
No known key found for this signature in database
GPG Key ID: 2EDB5C0DE411E711

View File

@ -245,7 +245,7 @@ println!("x = {}, y = {}", x, y);
Rust 有一个叫做`Copy` trait 的特殊注解,可以用在类似整型这样的储存在栈上的类型(第十章详细讲解 trait。如果一个类型拥有`Copy` trait一个旧的变量在重新赋值后仍然可用。Rust 不允许自身或其任何部分实现了`Drop` trait 的类型使用`Copy` trait。如果我们对其值离开作用域时需要特殊处理的类型使用`Copy`注解,将会出现一个编译时错误。关于如何为你的类型增加`Copy`注解,请阅读附录 C 中的 Derivable Trait。
那么什么类型是`Copy`的呢?可以查看给定类型的文档来确认,不过作为一个通用的规则,任何简单标量值的组合可以是`Copy`的,任何不需要分配内存或类似形式资源的类型是`Copy`的,如下是一些`Copy`的类型:
那么什么类型是`Copy`的呢?可以查看给定类型的文档来确认,不过作为一个通用的规则,任何简单标量值的组合可以是`Copy`的,任何需要分配内存,或者本身就是某种形式资源的类型不会是`Copy`的。如下是一些`Copy`的类型:
* 所有整数类型,比如`u32`。
* 布尔类型,`bool`,它的值是`true`和`false`。