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;

}

相关推荐
唠玖馆3 分钟前
c++AVL树
开发语言·c++
2401_858286116 分钟前
130.【C语言】可变参数宏
c语言·开发语言
霸道流氓气质14 分钟前
通义千问 VL & Audio:图像、视频、语音多模态 Java 集成深度解析
java·开发语言·音视频
jayson.h16 分钟前
python-可视化提取表格-通用
开发语言·python
零依赖极客34 分钟前
《30 天手搓 ARM 架构零依赖纯 C 推理引擎》课程介绍与大纲
c语言·开发语言·arm开发·人工智能·嵌入式硬件·ai编程
qq_4523962336 分钟前
第三篇:《变量、类型与函数:Rust 的“基本盘”》
开发语言·后端·rust
5335ld37 分钟前
app版本更新(vue3+unibest+静默更新+强制更新)
开发语言·javascript·ecmascript
蒸蒸yyyyzwd44 分钟前
CPP 选手秋招学习笔记 day31
c++·求职招聘
chushiyunen1 小时前
mockito笔记
java·开发语言·笔记