最佳答案
在 Rust 中,引用永远不能为 null,因此在实际需要 null 的情况下,比如链表,可以使用 Option
类型:
struct Element {
value: i32,
next: Option<Box<Element>>,
}
与一个简单的指针相比,在内存分配和解引用步骤方面有多大的开销?在编译器/运行时中是否存在某种“魔法”使得 Option
成本低廉,或者比在使用相同的 enum
结构的非核心库中自己实现 Option
或者将指针包装在向量中的成本更低?