单例模式
通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。
以下例子通过将构造函数私有来防止实例化新的对象:
#include<iostream> #include<string> using namespace std; class ChairMan{ string name; ChairMan(string name){ChairMan::name = name;} public: static ChairMan& getInstanct(){ static ChairMan cm("***"); return cm; } void show(){ cout << "同志们好!我是主席:" << name <<endl; } }; int main() { //ChairMan C1("XXX"); 错误 1 error C2248: “ChairMan::ChairMan”: 无法访问 private 成员(在“ChairMan”类中声明) ChairMan::getInstanct().show(); system("pause"); return 0; }
原文:http://www.cnblogs.com/visions/p/5449715.html