mirror of
https://github.com/gnu4cn/rust-lang-zh_CN.git
synced 2025-01-14 22:30:30 +08:00
Update Ch10
This commit is contained in:
parent
adcb260f24
commit
31e9c16e03
@ -884,9 +884,9 @@ fn main() {
|
||||
}
|
||||
```
|
||||
|
||||
*清单 10-16:一个使用了值已超出作用域引用的尝试*
|
||||
*清单 10-16:使用了其值已超出作用域引用的尝试*
|
||||
|
||||
> 注意:清单 10-16、10-17 及 10-23 中的示例,都不带初始值地声明了一些变量,那么变量名就存在于外层作用域中。咋一看,这样做似乎与 Rust 的无空值(Rust's having no `null` values)特性相抵触。不过,在尝试于赋予变量值之前使用某个变量,就会得到一个编译器时错误,这样就表示 Rust 实际上是不允许空值(`null` values) 的。
|
||||
> 注意:清单 10-16、10-17 及 10-23 中的示例,均在不带变量初始值下,声明出了一些变量,而变量名存在于外层作用域中。乍一看,这样做似乎与 Rust 的无空值,Rust's having no `null` values,特性相抵触。不过,当咱们尝试于赋予变量值之前,使用某个变量,就会得到一个编译器时报错,这就表示 Rust 实际上是不允许空值的。
|
||||
|
||||
|
||||
外层作用域声明了一个名为 `r` 不带初始值的变量,同时内层作用域声明了一个名为 `x` 带有初始值 `5` 的变量。在那个内层作用域里头,这里尝试了将 `r` 的值设置为到 `x` 的一个引用。随后那个内层作用域便结束了,而这里尝试打印 `r` 中的值。由于 `r` 所指向的值,在这里尝试使用之前就已超出作用域,因此此代码不会编译。下面就是错误消息:
|
||||
|
Loading…
Reference in New Issue
Block a user