Rust lazy_static!
示例
使用lazy_static板条箱创建在运行时初始化的全局不可变变量。我们HashMap用作示范。
在Cargo.toml:
[dependencies] lazy_static = "0.1.*"
在main.rs:
#[macro_use]
extern crate lazy_static;
lazy_static! {
static ref HASHMAP: HashMap<u32, &'static str> = {
let mut m = HashMap::new();
m.insert(0, "hello");
m.insert(1, ",");
m.insert(2, " ");
m.insert(3, "world");
m
};
static ref COUNT: usize = HASHMAP.len();
}
fn main() {
// We dereference COUNT because it's type is &usize
println!("The map has {} entries.", *COUNT);
//在这里,由于Deref强制,我们不使用*取消引用
println!("The entry for `0` is \"{}\".", HASHMAP.get(&0).unwrap());
}
热门推荐
10 简短的祝福语中秋搞笑
11 旅游祝福语简短老师发言
12 伴娘祝福语简短朋友的话
13 生气蛋糕祝福语大全简短
14 送女儿礼物祝福语简短
15 祝福语简短的微信
16 过年红包祝福语简短霸气
17 吃饭后祝福语2026简短
18 立冬祝福语简短给女孩