我有一个游戏,我试图编写代码,我想回忆录一个next_guess函数,因为它是昂贵的。我知道有一些回忆录箱,但我有一些奇怪的要求和整个项目是一个练习学习锈,所以我想知道一个真正的Rustacean会怎么想它。next_guess函数位于Node struct的impl中。游戏树的分支非常快,所以每个层次都有几十个可能的下一步节点来分析。如果我将回忆录HashMap的引用添加到Node struct以供next_guess使用,我就不能使它变,因为不能有多个可变的引用。但我需要它是可变的,这样我就可以添加新的值。我认为使用globals是不可能的,但是将HashMap设置为lazy_static是正确的方法,或者应该使用unsafe块来访问它(我可以这样做吗?)谢谢
发布于 2022-09-02 06:41:46
只是我的两分钱:
Node中有一个HashMap将占用大量的空间。如果您手头已经有一个特定的Node,那么您真的想在HashMap中查找它吗?Option<BestNextGuess>本身不能存储缓存的值(可能在一个Node中)
https://stackoverflow.com/questions/73576636
复制相似问题