我想聲明的方法typedef,它包括方法類型本身的指針參數 - 這可能嗎?如何聲明的方法指針的類型定義方法參數
的方法看起來是這樣的:
void myFunc(FuncType* pFunc, int a) {}
其中myFunc
是匹配FuncType
聲明,這樣我就可以設置一個變量,並調用它像這樣:
FuncType f = myFunc;
f(&f, 5);
我試着聲明一個typedef匹配該方法爲:
typedef void (*FuncType)(FuncType*, int);
但是這不起作用,因爲FuncType
在完全聲明之前是必需的。我可以通過將參數設置爲一個void指針來解決這個問題,但是有一些解決方法;或許通過某種形式的FuncType
前向申報?
是的,我是這麼認爲的。我想通過將參數聲明爲指向類型的指針,我可以像結構和類一樣逃避它。很明顯不是。 – adelphus