Appearance
第 16 章 解引用
“解引用”(Deref)是“取引用”(Ref)的反操作。 取引用,我们有 &
、&mut
等操作符;对应的,解引用有 *
操作符,跟 C 语言是一样的。示例如下:
rust
fn main() {
let v1 = 1;
let p = &v1; //取引用操作
let v2 = *p; //解引用操作
println!("{} {}", v1, v2);
}
比如说,我们有引用类型 p: &i32;
,那么可以用 *
符号执行解引用操作。上例中,v1
的类型是 i32
,p
的类型是 &i32
,*p
的类型又返回 i32
。