3
我使用boost(信號+綁定)和C++來傳遞函數引用。下面是代碼:綁定函數問題
#define CONNECT(FunctionPointer) \
connect(bind(FunctionPointer, this, _1));
我用這個像這樣:
class SomeClass {
void test1() {}
void test2(int someArg) {}
SomeClass() {
CONNECT(&SomeClass::test1);
CONNECT(&SomeClass::test2);
}
};
二測功能結合作品(測試2),因爲它至少有一個參數。第一次測試我有一個錯誤:
‘void (SomeClass::*)()’ is not a class, struct, or union type
爲什麼我不能沒有參數傳遞函數?
好吧,我udnerstand。我知道宏是邪惡的,但我的宏的身體是巨大而醜陋的。當然,如果它像我的樣本,我會用它。謝謝。 – Ockonal 2010-07-23 11:29:45