C++类成员变量为一个函数指针
时间: 2023-10-21 15:08:49 浏览: 109
C++获取类的成员函数的函数指针详解及实例代码
在C++中,类成员变量可以是一个函数指针。这通常用于实现回调函数或将函数作为参数传递给其他函数。下面是一个简单的例子:
```
class MyClass {
public:
void (*myFuncPtr)(int); // 函数指针成员变量
void callMyFuncPtr(int arg) {
if (myFuncPtr != nullptr) {
myFuncPtr(arg);
}
}
};
void myFunc(int arg) {
std::cout << "myFunc called with arg: " << arg << std::endl;
}
int main() {
MyClass obj;
obj.myFuncPtr = myFunc;
obj.callMyFuncPtr(123);
return 0;
}
```
在这个例子中,`MyClass`类有一个名为`myFuncPtr`的函数指针成员变量。`callMyFuncPtr`方法可以调用该函数指针,并将一个整数参数传递给它。在`main`函数中,我们创建了一个`MyClass`对象,并将`myFunc`函数的地址赋值给`myFuncPtr`成员变量。最后,我们调用`callMyFuncPtr`方法,传递参数`123`,将会执行`myFunc`函数并输出`myFunc called with arg: 123`。
阅读全文