1、单例设计模式
1 #include<iostream>
2 using namespace std;
3
4 class MyCAS{
5 private:
6 MyCAS(){} //私有化构造函数
7 private:
8 static MyCAS *m_instance; //静态成员变量
9 public:
10 static MyCAS *GetInstance(){
11 if(m_instance == NULL){
12 m_instance = new MyCAS();
13 static cGarreceive c1;
14 }
15 return m_instance;
16 }
17 class cGarreceive{
18 public:
19 ~cGarreceive(){
20 if(MyCAS::m_instance){
21 delete MyCAS::m_instance;
22 MyCAS::m_instance = NULL;
23 }
24 }
25 };
26 void func(){
27 cout<<"测试"<<endl;
28 }
29 };
30 MyCAS *MyCAS::m_instance = NULL ; //静态成员变量必须在类外实现初始化
31
32 int main(){
33 MyCAS *p_a = MyCAS::GetInstance(); //创建一个对象,返回该类对象的指针
34 p_a->func();
35