单例

使用静态局部变量的方式实现单例模式:

(1)私有的构造方法,保证不能外部直接 new

    private:

        Demo()

(2)提供 getInstance() 方法,支持外部实例化对象

    Demo & Demo::getInstance()    //注意,这里只能返回应用,直接返回对象,可能导致未知结果
    {
        static Demo demo;
        return demo;
    }

注意:返回值使用对象引用

(3)私有的拷贝构造

    Demo (const Demo &); // 阻止copying

    Demo &operator=(const Demo &);

 

参考:

http://blog.sina.com.cn/s/blog_a146214401015l8v.html

https://blog.csdn.net/HUANG_XIAOJUN/article/details/103811798

你可能感兴趣的:(设计模式)