一、简单函数指针的用法
#include <iostream>
int (*pFun)(int, int);
int Add(int a, int b) {
return (a + b);
}
int main() {
pFun = Add;
std::cout << (*pFun)(2, 2) << std::endl;
return 0;
}
输出结果:

二、使用typedef定义函数指针(typedef的功能是定义新的类型)
#include <iostream>
typedef int (*pTRFUN)(int, int);
int Add(int a, int b) {
return (a + b);
}
int main() {
pTRFUN pFun = Add;
std::cout << (*pFun)(3, 5) << std::endl;
return 0;
}
输出结果:

三、在C++中使用函数指针
#include <iostream>
typedef int (*PTRUN)(int, int);
class MyTest {
public:
MyTest() {};
~MyTest() {};
public:
static int Add(int a, int b);
};
int MyTest::Add(int a, int b) {
return (a + b);
}
int main() {
PTRUN pFun = MyTest::Add;
std::cout << (*pFun)(3, 2) << std::endl;
return 0;
}
输出结果:
