今天覆習設計模式的時候,自己動手寫個個小的singleton模式的簡單實現,如下:
class singleton
private:
static singleton* minstance;
singleton();
public:
static singleton* getinstance();
singleton::singleton() {}
singleton* singleton::getinstance()
if(null==minstance)
minstance = new singleton;
return minstance;
後來查了一下才發現,對於靜態的成員指標必須先做初始化:
singleton* singleton::minstance=null;
類似c#中的內聯初始化。
而且靜態成員指標的初始化不能寫在建構函式的 初始化列表中。
真是動手程式設計序的時候能夠發現知識的缺口啊。
關於類的靜態成員函式指標的問題
最近遇到了這個問題,也查詢了好多資料,特此總結一下。所謂函式指標,就是指向函式的指標,可以以此來間接呼叫函式。但是呢,指向一般函式和指向類的成員函式不太一樣,而成員函式是否是靜態的,又有點不一樣。下面通過 來說明 1.指向一般函式的指標 typedef int pfun int,int int ma...
C 的靜態成員函式指標
先簡單的說說非靜態的成員函式。非靜態成員函式指標的型別 類的非靜態成員是和類的物件相關的。也就是說,要通過類的物件來訪問變數。成員函式的型別定義為 typedef void a pfunc a是乙個類,有乙個成員函式void test 使用 pfunc p a test 示例 include usi...
C 的靜態成員函式指標
先簡單的說說非靜態的成員函式。非靜態成員函式指標的型別 類的非靜態成員是和類的物件相關的。也就是說,要通過類的物件來訪問變數。成員函式的型別定義為 typedef void a pfunc a是乙個類,有乙個成員函式void test 使用 pfunc p a test 示例 cpp view pl...