当前位置: 首页>>编程语言>>正文


单件模式的c++实现

摘要:本文简要介绍了c++中使用静态变量实现单件模式的方法

关键字:单件模式,单例模式,singleton,静态变量

如果在程序的整个生命周期中,需要且只需要维护类的一个实例,应用单件模式(也叫单例模式)

比较合适!在C++中,有一种实现单件模式的比较优雅的方式,那就是在函数中使用静态变量。其基本思

想为将类的构造函数设为私有,然后定义一个静态的方法获取类的实例,这个静态方法中使用静态变量

定义类,所以不管调用这个方法多少次,类只实例化一次!

依据以上思想的c++单件模式实现如下:


/*
 * C++单件模式的实现
 */

#include 

using namespace std;

class Singleton
{
    public:

        static Singleton& getInstance()
        {
            static Singleton dp;
            return dp;
        }

        void message()
        {
            cout << "Singleton Message" << endl;
        }
    private:
        Singleton()
        {
            cout << "construct Singleton!" << endl;
        }
};

int main(int argc, char* *argv)
{
    Singleton::getInstance().message();
    Singleton::getInstance().message();
    Singleton::getInstance().message();
    system("pause");
    return 0;
}

singleton

本文由《纯净天空》出品。文章地址: https://vimsky.com/article/155.html,未经允许,请勿转载。