栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

C ++ Singleton设计模式

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C ++ Singleton设计模式

在2008年,我提供了Singleton设计模式的C ++ 98实现,该模式是延迟评估,保证销毁,技术上不是线程安全的。

class S{    public:        static S& getInstance()        { static S    instance; // Guaranteed to be destroyed. // Instantiated on first use. return instance;        }    private:        S() {}         // Constructor? (the {} brackets) are needed here.        // C++ 03        // ========        // Don't forget to declare these two. You want to make sure they        // are inaccessible(especially from outside), otherwise, you may accidentally get copies of        // your singleton appearing.        S(S const&);   // Don't Implement        void operator=(S const&); // Don't implement        // C++ 11        // =======        // We can use the better technique of deleting the methods        // we don't want.    public:        S(S const&)    = delete;        void operator=(S const&)  = delete;        // Note: Scott Meyers mentions in his Effective Modern        //       C++ book, that deleted functions should generally        //       be public as it results in better error messages        //       due to the compilers behavior to check accessibility        //       before deleted status};

Dobbs博士:C ++和双重检查锁定的风险:第一部分



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/386167.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号