我有一个由[[public成员作为单例访问的类:
class MySingleton{
public:
static MySingleton& Instance();
int x;
...
}
该类的访问方式如下:
MySingleton& MySingleton::Instance(){ static MySingleton instance; return instance; }
[当我尝试获取x的值时,我没有获得之前分配的值。我检查了打印。更改/获取x值的正确方法是什么?我应该使用setters / getters吗?还是我可以直接在作业中做?
谢谢大家
编辑:我对
x
进行了一次写入,如下所示:
MySingleton::Instance().x = 2;
当我尝试通过从不同的类(单线程)进行访问来获取x
时,出现不一致的值:
int z = MySingleton::Instance().x;