05-运算符 .

运算符 . — Rust 语言之旅

内容来源 · Tour of Rust / Rust 语言之旅

原文链接: https://tourofrust.com/94_zh-cn.html

运算符 .

.运算符用于访问引用的字段和方法,它的工作原理更加巧妙。

1
2
3
let f = Foo { value: 42 };
let ref_ref_ref_f = &&&f;
println!("{}", ref_ref_ref_f.value);

哇,为什么我们不需要在ref_ref_ref_f之前添加***?这是因为 . 运算符会做一些列自动解引用操作。 最后一行由编译器自动转换为以下内容。

1
println!("{}", (***ref_ref_ref_f).value);

示例代码

1
2
3
4
5
6
7
8
9
struct Foo {
    value: i32
}

fn main() {
    let f = Foo { value: 42 };
    let ref_ref_ref_f = &&&f;
    println!("{}", ref_ref_ref_f.value);
}
最后修改 August 21, 2026: 更新 (76fc81a2e)