一个编程语言是否能在保持 Rust 风格的所有权和生命周期(用于自动内存管理)的同时,放弃只允许同时存在一个可变引用以防止数据竞争的要求?
换句话说,Rust 风格的所有权和生命周期与 Rust 风格的借用检查两个概念是否可以分离?或者这两个思想在语义层面上本质上是纠缠在一起的?
一个编程语言是否能在保持 Rust 风格的所有权和生命周期(用于自动内存管理)的同时,放弃只允许同时存在一个可变引用以防止数据竞争的要求?
换句话说,Rust 风格的所有权和生命周期与 Rust 风格的借用检查两个概念是否可以分离?或者这两个思想在语义层面上本质上是纠缠在一起的?
std::unique_ptr
或将其传递给线程,则当原始指针超出范围时,它不会被销毁 - 基本上与Rust中的Box
相同。确实,如果您获取unique_ptr
内容的原始指针,则不会延长unique_ptr
的生命周期,但这不再是传递智能指针。 - trent