gpt4 book ai didi

指定常量 HashMap 时的 Rust 最佳实践

转载 作者:行者123 更新时间:2023-12-03 11:23:44 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Is it possible to populate a large set at compile time?

(3 个回答)



How do I create a global, mutable singleton?

(3 个回答)


去年关闭。




我正在尝试在 Rust 中设置一个常量、预定义的哈希映射。我不确定 Rust 中的最佳实践是什么。

use std::collections::HashMap;

pub const Countries: HashMap<&str, &str> = [
("UK", "United Kingdom"),
("US", "United States")
].iter().cloned().collect();

稍后将在库中引用这些内容。

如果这很糟糕,我猜函数中的匹配是最好的方法?

最佳答案

您可以使用 https://crates.io/crates/lazy_static (在运行时延迟执行)。

我个人使用 https://crates.io/crates/phf (编译时静态集合)如果数据真的是静态的。

use phf::{phf_map};

static COUNTRIES: phf::Map<&'static str, &'static str> = phf_map! {
"US" => "United States",
"UK" => "United Kingdom",
};

关于指定常量 HashMap 时的 Rust 最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60273064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com