0
假設我有一個C++類A,與靜態部件B實現C++函數指針與函數參數
class A{
static bool B(int *);
};
現在假設我要創建的方法B.它是如何可能實現函數指針?
我能做到這一點不帶任何參數,如:
bool (*p) ();
p=& A::B() ;
但我的代碼,我必須通過參數。怎麼做?
假設我有一個C++類A,與靜態部件B實現C++函數指針與函數參數
class A{
static bool B(int *);
};
現在假設我要創建的方法B.它是如何可能實現函數指針?
我能做到這一點不帶任何參數,如:
bool (*p) ();
p=& A::B() ;
但我的代碼,我必須通過參數。怎麼做?
你錯過了在P的聲明中的參數
bool (*p) (int*); // define p, note: p is a function with a 1 int* parameter
p=&A::B; // take the address of the B - no brackets here, since it is not a function call
int ii = 1;
bool b = p(&ii); // call B with a parameter
有你的函數指針的任何資源左顧右盼? – chris
@chris老實說,他看起來如此嗎? – 2013-12-10 20:08:52
'bool(* p)(); p =&A :: B();'?你似乎說它有效!?告訴我們是什麼問題。 'bool(* p)(); p = & A::B;'可能會更好。 –