From 6a7be5d144e68adefd6f971887d7ec906e466286 Mon Sep 17 00:00:00 2001 From: Librazy Date: Wed, 2 Aug 2017 22:47:52 +0800 Subject: [PATCH] fix translation about `Copy` ...and nothing that requires allocation or is some form of resource is `Copy`. --- src/ch04-01-what-is-ownership.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ch04-01-what-is-ownership.md b/src/ch04-01-what-is-ownership.md index 3a5abd5..32bb321 100644 --- a/src/ch04-01-what-is-ownership.md +++ b/src/ch04-01-what-is-ownership.md @@ -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`。