Rust 中的包、模块与错误处理
1. 包、模块与路径
在 Rust 里,当我们将一个枚举设为公共时,其所有变体都会变为公共的。如下所示,只需在 enum 关键字前加上 pub 关键字:
// Filename: src/thelib.rs
mod back_of_houses {
pub enum Appetizer {
Kebab,
Noodles,
}
}
pub fn eat_at_restaurant() {
let order1 = back_of_houses::Appetizer::Kebab;
let order2 = back_of_houses::Appetizer::Noodles;
}
由于我们把 Appetizer 枚举设为了公共的,所以能在 eat_at_restaurant 函数里使用 Kebab 和 Noodles 变体。枚举变体只有在公共时才有用,若在每种情形下都给每个枚举变体加上 pub 会很麻烦,所以公共是默认设置。而结构体字段在非公共时也常有用,它们遵循默认一切都是私有的规则,除非用 pub 标注。
我们还没探讨利用 pub 的另一种情形: use 关键字,这是模块系统的最后一个特性。我
超级会员免费看
订阅专栏 解锁全文
312

被折叠的 条评论
为什么被折叠?



