qt 单列模式不走构造函数
时间: 2024-05-18 09:10:14 浏览: 161
qt 单例模式,模板
5星 · 资源好评率100%
Qt 单例模式是一种常用的设计模式,它可以确保一个类只有一个实例,并且提供一个全局访问点。在 Qt 中,单例模式可以通过使用静态成员变量来实现,这个静态成员变量是指向唯一实例的指针。
如果要实现 Qt 单例模式不走构造函数,可以采用延迟初始化的方式。具体来说,在类中定义一个私有静态成员变量指向实例,并将构造函数私有化,然后在类的静态函数中判断实例是否已经被创建,如果没有,则进行创建。这样,在第一次调用单例的静态函数时才会触发构造函数的执行。
下面是一个示例代码:
```cpp
class Singleton {
public:
static Singleton* getInstance() {
if (m_instance == nullptr) {
m_instance = new Singleton();
}
return m_instance;
}
private:
Singleton() { }
static Singleton* m_instance;
};
Singleton* Singleton::m_instance = nullptr;
```
阅读全文