C++实现单例模式

#include <iostream>

class Singleton {

private:

static Singleton* instance; // 指向单例实例的指针

Singleton() {} // 私有构造函数

public:

// 获取单例对象的唯一全局访问点

static Singleton* getInstance() {

if (instance == nullptr) { // 懒加载

instance = new Singleton();

}

return instance;

}

// 示例成员函数

void doSomething() {

std::cout << "Doing something..." << std::endl;

}

};

Singleton* Singleton::instance = nullptr; // 静态初始化单例实例

int main() {

Singleton* s1 = Singleton::getInstance();

Singleton* s2 = Singleton::getInstance();

// 验证s1和s2是否指向同一个对象

if (s1 == s2) {

std::cout << "s1 and s2 are the same instance." << std::endl;

}

s1->doSomething();

s2->doSomething();

return 0;

}

相关推荐
__log几秒前
幂等性设计:从“重复提交“到“稳如磐石“的系统防护
java·开发语言·spring boot
spider_xcxc1 分钟前
Helm 部署 K8s 集群完整笔记
java·开发语言·kubernetes
海清河晏1112 分钟前
Qt实战:从零构建美化登录界面
开发语言·c++·qt
一只小灿灿12 分钟前
C++ 各类特殊符号、运算符
开发语言·c++
Fu_Lin_15 分钟前
《Qt嵌入式从零基础到精通》前言与阅读指南
开发语言·qt
名字还没想好☜19 分钟前
Go 的 select 实战:超时、非阻塞收发与优雅退出的三个套路
开发语言·数据库·golang·go·并发
geovindu20 分钟前
java: Backtracking Algorithm
java·开发语言·windows·后端·算法·回溯算法
萧青山27 分钟前
2026国标合规:Agent Loop合规设计模式的6种循环架构(GB/Z 185.6+Python)
python·设计模式·agent loop·gb/z 185·国标合规
晚风叙码40 分钟前
C++ vector底层模拟实现与迭代器失效深度剖析
c++·算法
Scott9999HH9 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python