#include<iostream.h> class A { private: int a; A(int x);//将构造函数定义为私有,因此我们只能通过后面的create静态函数来创建A实例 static A* instance; public: static A *create(int x)//单体模式,以保证程序最多创建一个A实例 { if(!instance) { instance=new A(x); } return instance; } int get() { return a; } }; A* A::instance=NULL; A::A(int x) { a=x; } void main() { A *ptr; ptr=A::create(2); cout<<ptr->get();//输出2 }
时间: 2024-10-10 06:02:54