|
|
麻烦各位帮忙看一下,实在是解决不了了,谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢,
我的想法很简单,就是把不同类的某个函数全部放入到一个list中,然后遍历整个list运行,可老是不行啊
#include <iostream>
#include "list"
using namespace std;
template<class T>
class SyncObj
{
private:
T *pObject;
typedef void(T::*SyncMethod)();
SyncMethod syncMethod;
public:
SyncObj(T *pObject,SyncMethod method)
{
this->pObject=pObject;
this->syncMethod=method;
}
void execute(void)
{
(pObject->*SyncMethod)();
}
};
class Test1{
public:
SyncObj<Test1> *objx;
void printfx()
{
printf("hello~~~~~~~~~");
}
void ff()
{
objx=new SyncObj<Test1>(this,&Test1::printfx);
objx->execute();//编译不过啊..
}
};
void main()
{
Test1 t;
}
|
|