【发布时间】:2014-12-13 16:54:58
【问题描述】:
有没有办法让类成员函数指针指向的函数访问函数指针类的成员变量?还是我必须将成员变量传递给函数?
class A {
public:
int var;
void(*fooPtr) (void);
//ctor
A(void(*funcPtr)(void)) :fooPtr(funcPtr){}
};
void foo(void) {
int test = var;
}
A classInstance(&foo);
编译器错误:'var' 未在此范围内声明
【问题讨论】:
-
您需要明确地将 this 或 *this 传递给 foo。
-
我建议您在下次粘贴之前先将代码分隔开。否则很难回答。
-
foo()实际上不是您班级的成员! -
您必须将一些信息传递给独立函数(整个类对象或成员)。
标签: c++