• 【设计模式】C++单例模式


    实现单例的步骤

    1. 构造函数私有化。不能让外部访问构造函数。
    2. 增加静态私有的当前类的指针变量。
    3. 提供静态对外接口,可以让用户获得单例对象。

    单例划分:1.懒汉式 2.饿汉式

    //懒汉式,需要的时候再创建
    class Singleton_lazy {
    private:
    	Singleton_lazy() {}
    	static Singleton_lazy* getInstance() {
    		if (pSingleton == NULL) {
    			pSingleton = new Singleton_lazy;
    		}
    		return pSingleton;
    	}
    private:
    	static Singleton_lazy* pSingleton;
    };
    //类外初始化
    Singleton_lazy* Singleton_lazy::pSingleton = NULL;
    
    //饿汉式,在main函数之前创建
    class Singleton_hungry {
    private:
    	Singleton_hungry() {}
    	static Singleton_hungry* getInstance() {
    		return pSingleton;
    	}
    private:
    	static Singleton_hungry* pSingleton;
    };
    //类外初始化
    Singleton_hungry* Singleton_hungry::pSingleton = new Singleton_hungry;
    
  • 相关阅读:
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    iOS
    ajax 几种提交方式
  • 原文地址:https://www.cnblogs.com/zhangjiuding/p/13188573.html
Copyright © 2020-2023  润新知