我在一个类中定义了一个函子。我想直接从仿函数访问外部类的成员函数。我怎么做?我想将此函子传递给代码中其他地方的模板类。我不想使用函数指针。
仿函数是否需要保留对内部类的引用作为成员,在初始化时分配给它,以便能够调用该类的函数?
Class MyClass //outer class
{
void DoSomething() //member function I want to access from functor
{
}
class MyFunctor //the functor who wants to access outerclass's function
{
void operator() ()
{
DoSomething() //This is a member function of outer class
}
}
};
}
假设我想在仿函数内部保留对外部类的本地引用,那么如何创建一个指向仿函数的实例(不是指针)并将指针传递给仿函数的构造函数中的外部类?