设计模式 之单例模式

单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供全局访问点,使得该实例可以在程序的任何地方被访问。单例模式经常用于管理共享资源或限制对象创建数量的情况下。

实现一个单例模式需要注意以下几个关键点:

  1. 构造函数需要被设置为私有,以防止其他类直接实例化对象。
  2. 类内部需要创建一个静态成员变量来保存唯一的实例对象。
  3. 提供一个公共的静态方法,用于获取该实例对象。
cpp 复制代码
class Singleton {
private:
    static Singleton* instance; // 静态成员变量,用于保存单例对象

    Singleton() {} // 私有构造函数,防止外部实例化对象

public:
    static Singleton* getInstance() {
        if (instance == nullptr) {
            instance = new Singleton();
        }
        return instance;
    }

    void doSomething() {
        // 单例对象的方法
    }
};

Singleton* Singleton::instance = nullptr; // 初始化静态成员变量

int main() {
    Singleton* singleton = Singleton::getInstance();
    singleton->doSomething();

    return 0;
}
相关推荐
在未来等你7 小时前
AI Agent设计模式 Day 19:Feedback-Loop模式:反馈循环与自我优化
设计模式·llm·react·ai agent·plan-and-execute
兵bing12 小时前
设计模式-访问者模式
设计模式·访问者模式
python零基础入门小白12 小时前
【万字长文】大模型应用开发:意图路由与查询重写设计模式(从入门到精通)
java·开发语言·设计模式·语言模型·架构·大模型应用开发·大模型学习
MC丶科12 小时前
Java设计模式漫画英雄宇宙-工厂模式 —Factory博士的“超级英雄制造机”!
java·设计模式·漫画
明洞日记13 小时前
【设计模式手册013】命令模式 - 请求封装的优雅之道
java·设计模式·命令模式
ada0_ada113 小时前
行为型模式:②命令模式(Command Pattern)
设计模式
o0向阳而生0o14 小时前
113、23种设计模式之中介者模式(21/23)
设计模式·中介者模式
心语星光14 小时前
23种经典设计模式
设计模式
Mr.Winter`21 小时前
基于Proto3和单例模式的系统参数配置模块设计(附C++案例实现)
c++·人工智能·单例模式·机器人
ACE19851 天前
AI Agent 设计模式深度解析:提示链(Prompt Chaining)模式
人工智能·设计模式·prompt