Unigine中的回調函數使用很方便。
1:)可以使用多達默認5個參數的回調函數
2:)可以不要求類函數申明爲靜態函數
3:)直接在Unigine的Include目錄中拿到 CallBack.h頭文件,調用即可使用。你的其餘程序也可以這麼做。
測試代碼如下:
class TestClass
{
public:
TestClass()
{
}
void TestCallbackMethodA()
{
printf("I am callback\n");
}
void TestCallbackMethodB(int a, char* c)
{
printf("%s and %d\n", c, a);
}
///\測試無參數的回調方法
///
void TestA()
{
CallbackBase* back=MakeCallback(this,&TestClass::TestCallbackMethodA);
back->run();
}
///\測試使用多種參數的回調方法
///
void TestB()
{
CallbackBase2<int ,char*>* back = MakeCallback(this, &TestClass::TestCallbackMethodB);
back->run(10, "adsfadsf");
}
};
int main()
{
TestClass* tt = new TestClass();
tt->TestA();
tt->TestB();
system("pause");
return 0;
}