我如何创建一个静态的可变哈希映射?如果需要,我可以提供不安全的代码。
普通的静态方法不允许具有构造函数的全局变量。
例如,我想要类似https://gist.github.com/Kimundi/8782487中的内容,但希望哈希映射是可变的。
我理解在 Rust 中,全局共享可变状态并不是很“Rust-ish”,但我只是想知道这样的事情是否可能。
我如何创建一个静态的可变哈希映射?如果需要,我可以提供不安全的代码。
普通的静态方法不允许具有构造函数的全局变量。
例如,我想要类似https://gist.github.com/Kimundi/8782487中的内容,但希望哈希映射是可变的。
我理解在 Rust 中,全局共享可变状态并不是很“Rust-ish”,但我只是想知道这样的事情是否可能。
要获取维护的答案,请参见如何创建全局可变单例?,因为这个问题应该被标记为重复。
既然您已经有了非可变全局对象的解决方案,也许可以使用其中一个cell
容器来添加内部可变性?
实际上,这听起来像是一个糟糕的想法。全局可变状态存在问题。为什么不能将可变哈希映射传递给需要它的方法/对象呢?
您还可以查看stdin
的实现,该实现提供对真正的全局单例的安全访问。