|
发表于 2010-3-17 12:39:00
|
显示全部楼层
Re:怎样才能将类的this指针传入类中的回调函数?
1 用C++ 2010 中的lambda表达式
2 用手工方法:
template <class Tdest, class Tsrc> union _UnionCast
{
Tdest dest;
Tsrc src;
};
template <class Tdest, class Tsrc> __forceinline Tdest union_cast(Tsrc x)
{
_UnionCast<Tdest,Tsrc> tmp;
tmp.src=x;
return tmp.dest;
}
class __obj{};
#define THISCALLBACK(pthis,pfunc,rettype,params,args) ( reinterpret_cast<__obj *>(pthis) ->* ::inst::union_cast<rettype (__obj::*)params>(pfunc) ) args
|
|