如何设计一个含GetInstance()函数的类

直接上代码:

头文件(MyClass.h):

class CMyClass
{
public:
CMyClass(void);
~CMyClass(void);
public:
static CMyClass* GetInstance();
private:
static CMyClass* m_pMyClass;
};

CPP文件(MyClass.cpp):

#include "MyClass.h"

CMyClass* CMyClass::m_pMyClass = NULL;
CMyClass::CMyClass(void)
{
} CMyClass::~CMyClass(void)
{
if (NULL != m_pMyClass)
{
delete m_pMyClass;
m_pMyClass = NULL;
}
} CMyClass* CMyClass::GetInstance()
{
if (NULL == m_pMyClass)
{
m_pMyClass = new CMyClass();
}
return m_pMyClass;
}

为什么需要GetIntance(),与new方法的区别?

答案参考:http://blog.csdn.net/yong199105140/article/details/8425781

05-11 17:02
查看更多