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
55693909d3
commit
355ab2641b
@ -931,9 +931,9 @@ fn main() {
|
||||
|
||||
*清单 10-17:变量 `r` 与 `x` 生命周期的注解,各自取名为 `'a` 与 `'b`*
|
||||
|
||||
这里,咱们以 `'a` 注解出了 `r` 的声明周期,与 `'b` 注解出 `x` 的生命周期。正如咱们所能看到的,相比外层 `'a` 声明周期代码块,那个内层 `'b` 代码块要小得多。在编译时,Rust 会比较这两个生命周期的大小,而发现变量 `r` 有着 `'a` 的生命周期,但他却指向了个 `'b` 的生命周期。由于生命周期 `'b` 比 `'a` 要短,于是该程序就被拒绝:引用物,the subject of the reference,未与引用变量存活同样时间。
|
||||
这里,咱们以 `'a` 注解出了 `r` 的声明周期,与 `'b` 注解出 `x` 的生命周期。正如咱们所能看到的,相比外层 `'a` 声明周期代码块,那个内层 `'b` 代码块要小得多。在编译时,Rust 会比较这两个生命周期的大小,而发现变量 `r` 有着 `'a` 的生命周期,但他却指向了个 `'b` 的生命周期。由于生命周期 `'b` 比 `'a` 要短,于是该程序就被拒绝:引用物,the subject of the reference,没有存活到引用那么长时间。
|
||||
|
||||
下面清单 10-18 修复了该代码,因此他就没有悬空引用,进而就无误地编译了。
|
||||
下面清单 10-18 修复了该代码,从而其就没有了悬空引用,并会不带任何错误地编译。
|
||||
|
||||
|
||||
```rust
|
||||
|
Loading…
Reference in New Issue
Block a user