西安分类信息网站,wordpress 超级搜索,如何利用路由建设网站,绍兴中小企业名录0、核心要素
// 构造、析构函数私有化#xff08;一个进程只允许一个对象存在#xff09; // 对象私有化、静态化#xff08;因为接口静态函数#xff09; // 对象调用接口静态化#xff08;因为静态函数脱离了类对象#xff0c;可以直接调用#xff09;
一、懒汉
唯…0、核心要素
// 构造、析构函数私有化一个进程只允许一个对象存在 // 对象私有化、静态化因为接口静态函数 // 对象调用接口静态化因为静态函数脱离了类对象可以直接调用
一、懒汉
唯一的对象在使用时才进行初始化。存在多线程问题。
#include iostreamusing namespace std;class singleMode {public:static singleMode* getInstance() {if (objnullptr) {obj new singleMode();}return obj;}void printMsg() {cout print success. endl;}private:static singleMode* obj;singleMode() {cout instance create. endl;}~singleMode() {cout instance release. endl;}
};singleMode* singleMode::obj nullptr;
// singleMode* singleMode::obj new singleMode();int main()
{{singleMode::getInstance()-printMsg();}return 0;
}二、饿汉
唯一的对象在定义时就完成初始化。
#include iostreamusing namespace std;class singleMode {public:static singleMode* getInstance() {/* if (objnullptr) {obj new singleMode();}*/return obj;}void printMsg() {cout print success. endl;}private:static singleMode* obj;singleMode() {cout instance create. endl;}~singleMode() {cout instance release. endl;}
};// singleMode* singleMode::obj nullptr;
singleMode* singleMode::obj new singleMode();int main()
{{singleMode::getInstance()-printMsg();}return 0;
}