本文共 720 字,大约阅读时间需要 2 分钟。
#include#include class SingleClass{public: static std::shared_ptr GetSingle(); // 禁止拷贝构造函数 SingleClass(const SingleClass& single)= delete; // 禁止复制构造函数 SingleClass&operator=(const SingleClass & single) = delete;private: SingleClass(); std::shared_ptr single_;};SingleClass::SingleClass() { int * a = new int(10); single_ = std::make_shared (11); std::cout << "single class create:" << *single_ << std::endl;}std::shared_ptr SingleClass::GetSingle() { static SingleClass single_class; return single_class.GetSingle();}int main() { std::shared_ptr single_class = SingleClass::GetSingle(); return 0;}
转载地址:http://pdwmi.baihongyu.com/