【发布时间】:2015-03-07 07:18:54
【问题描述】:
来自 Rust 指南:
要取消引用(获取被引用的值而不是引用本身)
y,我们使用星号 (*)
所以我做到了:
fn main() {
let x = 1;
let ptr_y = &x;
println!("x: {}, ptr_y: {}", x, *ptr_y);
}
即使没有显式取消引用,这也会给我相同的结果 (x=1; y=1):
fn main() {
let x = 1;
let ptr_y = &x;
println!("x: {}, ptr_y: {}", x, ptr_y);
}
为什么? ptr_y不应该打印内存地址,*ptr_y不应该打印1吗?是否有某种自动取消引用或我错过了什么?
【问题讨论】:
标签: pointers rust dereference