我有一种情况,我想将PathBuf
的值存储在两个不同的集合中,分别存储在HashSet<PathBuf>
中和作为结构Vec<Contract>
的向量中的字段(Contract
是我的项目中定义的自定义结构)。
我查看了docs,但找不到PathBuf
的克隆功能。
我知道还有其他解决方案,例如将PathBuf
转换为String
或为PathBuf
生成唯一的哈希,但我希望使用相同的类型。
可以克隆PathBuf
吗?
更新:正如@vallenting在评论中指出的那样,我正在查看PathBuf
的旧版本。在v1.8.0及更高版本中,可以使用clone
。
最佳答案
在v0.99.10
中,您可以使用 to_path_buf()
。
let p = PathBuf::from("...");
let p_clone = p.to_path_buf();
但是,在
v1.8.0
中,您可以按期望的方式使用 clone()
。let p = PathBuf::from("...");
let p_clone = p.clone();
关于rust - 如何在v0.99.10中克隆async_std::path::PathBuf?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65347643/