qt 创建单例 .h .cpp形式
时间: 2024-03-21 21:43:15 浏览: 107
以下是一个使用 `.h` 和 `.cpp` 形式实现单例的示例:
MySingleton.h 文件:
```cpp
#ifndef MYSINGLETON_H
#define MYSINGLETON_H
class MySingleton {
public:
static MySingleton* instance();
void doSomething();
private:
MySingleton();
~MySingleton();
static MySingleton* m_instance;
};
#endif // MYSINGLETON_H
```
MySingleton.cpp 文件:
```cpp
#include "MySingleton.h"
MySingleton* MySingleton::m_instance = nullptr;
MySingleton* MySingleton::instance() {
if (m_instance == nullptr) {
m_instance = new MySingleton();
}
return m_instance;
}
void MySingleton::doSomething() {
// ...
}
MySingleton::MySingleton() {}
MySingleton::~MySingleton() {}
```
在其他地方使用 `MySingleton` 时,可以这样调用:
```cpp
MySingleton* singleton = MySingleton::instance();
singleton->doSomething();
```
阅读全文