发布网友
共4个回答
热心网友
singleton模式
class ClassA
{
private:
int data;
static ClassA* ap;
protected:
ClassA(){};
public:
int Getdata();
int Setdata(int m_data);
static ClassA *Instance();
~ClassA();
};
int ClassA::Getdata()
{
return data;
}
int ClassA::Setdata(int m_data)
{
data = m_data;
return m_data;
}
ClassA* ClassA::Instance()
{
if(ap == NULL)//未被初始化
ap = new ClassA;
//ap = (ClassA*)malloc(sizeof(ClassA));
return ap;
}
ClassA::~ClassA()
{
delete ap;
}
ClassA* ClassA::ap = NULL;
int main(void)
{
ClassA *instance_a;
instance_a = ClassA::Instance();
int d = instance_a->Getdata();
cout<<d<<endl;
system("pause");
return 0;
}
热心网友
用C++学习设计模式很辛苦,用C#吧,简洁明了,直达根本,推荐《C#设计模式》。
热心网友
下个设计模式手册
里面有23种设计模式详解 ,没一种都有uml图,实例代码
热心网友
建议你到MSDN查查。初学者一般都从那上面啃,慢慢来吧。