我的目的是创建一个单例,但不知道如何在Rust中处理这个问题,我已阅读this和this,但不确定这是否是创建的方式一个简单的单身人士,因为一个人说的是一个可变的单身人士"另一个是" safe-static-singleton"。
答案 0 :(得分:4)
单身只是一个懒惰的初始化静态数据。这意味着你真的想要lazy-static
。
请注意
对于给定的
static ref NAME: TYPE = EXPR;
,宏会生成一个实现Deref<TYPE>
的唯一类型,并将其存储在名为NAME
的静态中。
这意味着NAME
实际上类似于“singleton”的构造函数,而&*NAME
本身就是“singleton”。