References
There are two kinds of reference:
- Shared reference:
&
- Mutable reference:
&mut
Which obey the following rules:
- A reference cannot outlive its referent
- A mutable reference cannot be aliased
That’s it. That’s the whole model references follow.
Of course, we should probably define what aliased means.
error[E0425]: cannot find value `aliased` in this scope
--> <rust.rs>:2:20
|
2 | println!("{}", aliased);
| ^^^^^^^ not found in this scope
error: aborting due to previous error
Unfortunately, Rust hasn’t actually defined its aliasing model. ?
While we wait for the Rust devs to specify the semantics of their language,let’s use the next section to discuss what aliasing is in general, and why itmatters.
当前内容版权归 rust-lang.org 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 rust-lang.org .