设计模式
单例模式 视频 参考 用例:序列号生成器、web页面计数器 通过单例模式, 可以做到: 确保一个类只有一个实例被建立 ,并且自行实例化并向整个系统提供这个实例。 提供了一个对对象的全局访问指针 在不影响单例类的客户端的情况下允许将来有多个实例 因为要保证只有一个实例,就要求该类不能被外界实例化只能类自己实例化,即构造函数要是private 代码: // 懒汉式单例模式:类加载时不实例化,而是在第一次被调用的时候才进行实例化 class Singleton { private : Singleton ( ) { } static Singleton * pInstance ; public : static Singleton * GetInstance ( ) { if ( pInstance == nullptr ) pInstance = new Singleton ( ) ; return pInstance ; } } ; // 线程安全的单例模式:饿汉式,即在类加载的时候就进行实例化 class Singleton { private : Singleton ( ) { } ~ Singleton ( ) { } Singleton ( const Singleton & ) ; Singleton & operator = ( const Singleton & ) ;