【发布时间】:2025-12-07 15:20:03
【问题描述】:
我正在使用 Rust 中的原始指针,并且有几行非常难以阅读,因为我在 Rust 中找不到与 C++ 中的-> 具有相似功能的运算符。有吗?
这是我目前难以阅读的代码的 sn-p:
(*(*block).next().unwrap()).split(ExcHeader(30));
【问题讨论】:
标签: rust raw-pointer
我正在使用 Rust 中的原始指针,并且有几行非常难以阅读,因为我在 Rust 中找不到与 C++ 中的-> 具有相似功能的运算符。有吗?
这是我目前难以阅读的代码的 sn-p:
(*(*block).next().unwrap()).split(ExcHeader(30));
【问题讨论】:
标签: rust raw-pointer
没有。 Rust 中的原始指针必须手动取消引用,因为这样做是不安全的操作。
如果您一遍又一遍地重复取消引用同一个指针,您可以将其转换为引用 (let block = &*block;)。遗憾的是,没有后缀取消引用运算符,因此您对 next 作为指针的结果无能为力。
【讨论】: