Rust 程序设计语言 简体中文版 1.85.0
会在这些情况下调用此函数。 • Errors:如果这个函数返回 Result,此部分描述可能会出现何种错误以及什么情况会造成这 些错误,这有助于调用者编写代码来采用不同的方式处理不同的错误。 • Safety:如果这个函数使用 unsafe 代码(这会在第二十章讨论),这一部分应该会涉及到期 望函数调用者支持的确保 unsafe 块中代码正常工作的不变条件(invariants)。 大部分文档注 = 0; /// SAFETY: 同时在多个线程调用这个方法是未定义的行为,所以你*必须*保证同一时间只 /// 有一个线程在调用它。 unsafe fn add_to_count(inc: u32) { unsafe { COUNTER += inc; } } fn main() { unsafe { // SAFETY: 它只在 `main` unsafe,并在文档注释中说明其安全性限制,以便调用者明确哪些操作是安全的、哪些是 不安全的。 每当我们编写一个不安全函数,惯常做法是编写一个以 SAFETY 开头的注释并解释调用者需要 做什么才可以安全地调用该方法。同理,当我们进行不安全操作时,惯常做法是编写一个以 SAFETY 开头并解释安全性规则是如何维护的。 另外,编译器不会允许你创建一个可变静态变量的引用。你只能通过用裸指针解引用操作符创 建的裸指0 码力 | 562 页 | 3.23 MB | 9 天前3
共 1 条
- 1