当前位置: 首页 > news >正文

C++中单例推荐写法

直接看代码

//main.cppclass Singleton
{
public:static Singleton* Instance(){//这种在C++11中是线程安全的,若多个线程试图同时初始化同一静态局部变量,则初始化严格发生一次,不需要双检查static Singleton* pInstance = new Singleton();return pInstance;}~Singleton() = default;private:Singleton() = default;Singleton(Singleton const&) = delete;Singleton& operator=(Singleton const&) = delete;
};int main()
{auto p = Singleton::Instance();return 0;
}

注意单例不仅需要考虑创建时的线程安全,还需要考虑访问时的线程安全,如果一个单例类有一些私有数据成员,在修改这些数据成员的时候,就需要考虑线程的安全,一般是在单例类内部保证线程安全,也就是在修改数据成员的时候,采用锁等同步机制。


http://www.mrgr.cn/news/49133.html

相关文章:

  • 【尚硅谷】FreeRTOS学笔记(更新中更新时间2024.10.12)
  • 81.【C语言】数据结构之空间复杂度
  • 探索Spring Cloud Config:构建高可用的配置中心
  • 语料库综述
  • vue3学习:数字时钟遇到的两个问题
  • 部分品牌电脑进入BIOS方法
  • RBTree(红黑树)的介绍和实现
  • gaussdb 主备版本8 SQL参考 学习
  • 2024全国科技特长生趋势揭秘
  • 利士策分享,生命的价值是金钱可以丈量的吗?
  • C++基础补充(03)C++20 的 std::format 函数
  • 【Redis】什么是Redis
  • RabbitMQ 入门(二)基本结构和消息模型
  • S4.2.6.1 LTSSM 之 Detect 状态
  • 【C++栈】2434. 使用机器人打印字典序最小的字符串|1953
  • MySQL 删除数据库
  • python 画图|三维散点图输出
  • 现代数字信号处理I-P2概率论学习笔记
  • 基于51单片机的超市商场电子秤MPX4115proteus仿真
  • 基于Java的旅游网站管理系统—计算机毕业设计源码39235