Rust 程序设计语言 简体中文版 1.85.0i32。相反如果尝试同时创建 num 的不可变和可变引用,代码将无法通过编译,因为 Rust 的所有权规则不允许在拥有任何不可变引用的同时再创建可变引用。通过裸指针,就能 够同时创建同一地址的可变指针和不可变指针,若通过可变指针修改数据,则可能造成潜在数 据竞争。请多加小心! 既然存在这么多的危险,为何还要使用裸指针呢?一个主要的应用场景便是调用 C 代码接口, 这在下一部分 “调用不安全函数或方法” 中会讲到。另一个场景是构建借用检查器无法理解的 编译器都支持任何之前存在的编译器版本,并可以链接任何支持版本的 crate。编译 器修改只影响最初的解析代码的过程。因此,如果你使用 Rust 2015 而某个依赖使用 Rust 2018,你的项目仍旧能够编译并使用该依赖。反之,若项目使用 Rust 2018 而依赖使用 Rust 2015 亦可工作。 有一点需要明确:大部分功能在所有版本中都能使用。开发者使用任何 Rust 版本将能继续接 收最新稳定版的改进。然而在一些情况0 码力 | 562 页 | 3.23 MB | 28 天前3
共 1 条
- 1













