qt 创建单例 .h .cpp
时间: 2024-03-26 21:41:16 浏览: 50
好的,下面是创建单例的示例代码:
MySingleton.h
```cpp
#pragma once
class MySingleton
{
public:
static MySingleton& getInstance();
// other public member functions...
private:
MySingleton() = default;
~MySingleton() = default;
MySingleton(const MySingleton&) = delete;
MySingleton& operator=(const MySingleton&) = delete;
};
```
MySingleton.cpp
```cpp
#include "MySingleton.h"
MySingleton& MySingleton::getInstance()
{
static MySingleton instance;
return instance;
}
// other member function definitions...
```
在 `getInstance()` 函数中,我们声明一个静态的 `MySingleton` 对象 `instance`,并在第一次调用 `getInstance()` 时创建它。由于这是一个静态对象,它只会被创建一次,从而实现了单例模式。
请注意,我们将 `MySingleton` 的拷贝构造函数和赋值运算符声明为 `delete`,这是为了防止通过拷贝构造函数或赋值运算符创建多个实例。
阅读全文