5.3 健全 Rust 的三种形态
02-健全 Rust 的三种形态 — Comprehensive Rust
1分钟内可阅读完
译文 · 基于 Comprehensive Rust
5.3 健全 Rust 的三种形态
- 完全用 Safe Rust 编写的函数
- 包含不可能被误用的
unsafe块的函数 - 已记录安全前置条件的不安全(unsafe)函数
- 我们要编写健全代码。
- 健全代码只能有以下形态:
- 不含
unsafe块的安全函数- 完全封装
unsafe块的安全函数,即调用方无需了解其中的unsafe- 包含
unsafe块但未将其封装、把证明责任转嫁给调用方的不安全函数- 证明责任
- 仅含 Safe Rust 的安全函数 → 编译器
- 含
unsafe块的安全函数 → 函数作者- 不安全函数 → 函数调用方