class A
{
public:
static A* Instance()
{
if( NULL == m_pa )
m_pa = new A();
return m_pa;
}
private:
A() {};
~A() {};
static A* m_pa;
}
上面的隻是定義好了,用時候還會碰到問題,需要加上一個句
A * A::m_pa = NULL; //注意這句話隻能執行一次,不然會出現重複定義(好多人這裡都沒有說清楚,讓我自己做時候郁悶了半天)
class A
{
public:
static A* Instance()
{
if( NULL == m_pa )
m_pa = new A();
return m_pa;
}
private:
A() {};
~A() {};
static A* m_pa;
}
上面的隻是定義好了,用時候還會碰到問題,需要加上一個句
A * A::m_pa = NULL; //注意這句話隻能執行一次,不然會出現重複定義(好多人這裡都沒有說清楚,讓我自己做時候郁悶了半天)