简介
在本实验中,use 声明用于消除 Rust 中手动作用域的需求,并使名称无需显式指定命名空间即可使用。
注意:如果实验未指定文件名,你可以使用任何你想要的文件名。例如,你可以使用
main.rs,并通过rustc main.rs &&./main进行编译和运行。
在本实验中,use 声明用于消除 Rust 中手动作用域的需求,并使名称无需显式指定命名空间即可使用。
注意:如果实验未指定文件名,你可以使用任何你想要的文件名。例如,你可以使用
main.rs,并通过rustc main.rs &&./main进行编译和运行。
use 声明可用于无需手动作用域:
// 一个用于隐藏未使用代码警告的属性。
#![allow(dead_code)]
enum Status {
Rich,
Poor,
}
enum Work {
Civilian,
Soldier,
}
fn main() {
// 显式地 `use` 每个名称,这样它们无需手动作用域即可使用。
use crate::Status::{Poor, Rich};
// 自动 `use` `Work` 中的每个名称。
use crate::Work::*;
// 等同于 `Status::Poor`。
let status = Poor;
// 等同于 `Work::Civilian`。
let work = Civilian;
match status {
// 注意由于上面的显式 `use`,这里无需作用域。
Rich => println!("The rich have lots of money!"),
Poor => println!("The poor have no money..."),
}
match work {
// 再次注意这里无需作用域。
Civilian => println!("Civilians work!"),
Soldier => println!("Soldiers fight!"),
}
}
恭喜你!你已完成“Use”实验。你可以在 LabEx 中练习更多实验以提升你的技能。