使用懒汉式单例模式来延迟单例对象的创建,直到它第一次被访问时才创建。这种方法的优点在于,单例对象只有在第一次被使用时才会被创建,这样就可以节省资源。
class Singleton {
public:
static Singleton* getInstance() {
if (instance_ == nullptr) {
instance_ = new Singleton();
}
return instance_;
}
private:
static Singleton* instance_;
Singleton() {}
~Singleton() {}
};
Singleton* Singleton::instance_ = nullptr;
int main() {
Singleton* instance1 = Singleton::getInstance();
Singleton* instance2 = Singleton::getInstance();
std::cout << (instance1 == instance2) << std::endl; // Outputs "1"
return 0;
}