C++实现单例模式的一个例子,有些不明白的地方
#include "string.h"#include "iostream.h"class SingletonClass{private: static SingletonClass instance; char Classname[30]; SingletonClass() { strcpy(Classname, "SingletonClass"); }public: char *getClassName() { return Classname; } static SingletonClass getInstance() { return instance; } void setClassName(char *p) { strcpy(Classname, p); }};SingletonClass SingletonClass::instance;int main(int argc, char *argv[]){ SingletonClass *p = &SingletonClass::getInstance();//获取实例的指针 cout<<"class name:"<<p->getClassName()<<endl; p->setClassName("123456"); cout<<"class name:"<<p->getClassName()<<endl; SingletonClass *p1 = &SingletonClass::getInstance();//再次获取实例的指针 cout<<"class name:"<<p1->getClassName()<<endl;//输出123456 cout<<"class name:"<<p->getClassName()<<endl;//输出SingletonClass return 0;}