C++ 简单设计模式之单例模式
一、单例模式
要点:该类有且仅有一个实例,并只能通过接口函数获取到该类的实例
二、类设计
class A {
private:
A() = default; // 私有化构造函数
A(A&) = delete; // 禁止拷贝构造函数
A& operator=(const A&) = delete; // 禁止赋值运算符
public:
~A() = default;
public:
static A& instance() {
static A _instance;
return _instance;
}
};
三、使用方式
int main(int argc, char *argv[])
{
A *a = &A::instance(); // 获取到实例
return 0;
}
四、完整代码
#include <iostream>
using namespace std;
class A {
private:
A() = default; // 私有化构造函数
A(A&) = delete; // 禁止拷贝构造函数
A& operator=(const A&) = delete; // 禁止赋值运算符
public:
~A() = default;
public:
static A& instance() {
static A _instance;
return _instance;
}
};
int main(int argc, char *argv[])
{
A *a = &A::instance(); // 获取到实例
return 0;
}
本文来自博客园,作者:想想就很离谱,转载请注明原文链接:https://www.cnblogs.com/lvvou/p/15701508.html