这是一个简单的单身人士:
class Singleton
{
Singleton();
virtual ~Singleton();
Singleton * Singleton::getInstance()
{
static Singleton * instance;
if (!instance) {
instance = new Singleton();
};
return instance;
};
}
Run Code Online (Sandbox Code Playgroud)
当主代码Singleton::getInstance()->someMethod()第一次调用时,是不是实例化了两次类?会有内存泄漏吗?
我问,因为Visual Leak Detector检测到线路上的内存泄漏new Singleton().