我已经用接口实现了我的回调..
struct ICallback
{
virtual bool operator()() const = 0;
};
和添加回调的函数
void addCallback(const ICallback* callback) { .... }
并使用,回调在某个类中
class BusImplemantation{
public:
struct Foo : ICallback
{
virtual bool operator()() const { return true;}
}foo;
void OtherMethod();
int OtherMember;
};
但是因为回调是类(不是函数/方法),所以我不能在回调中访问 OtherMethod 和 OtherMember。如果回调不是类,而只是可能的方法。(内部类与方法)
我不能将 OtherMethod 和 OtherMember 作为参数传递给回调。
有没有更好的解决方案?也许有模板?