阅读量:0
C++中,函数指针的定义方法如下:
定义函数指针类型:
typedef returnType (*functionPtrType)(parameterType1, parameterType2, ...);
returnType
为函数返回值的类型。functionPtrType
为函数指针类型的名称,可以根据需要自定义。parameterType1, parameterType2, ...
为函数的参数类型。
声明函数指针变量:
functionPtrType functionNamePtr;
functionNamePtr
为函数指针变量的名称,可以根据需要自定义。
例如,定义一个函数指针类型为void(*)(int, int)
,表示指向参数为两个int
类型,返回类型为void
的函数指针。然后声明一个名为add
的函数指针变量,可以这样写:
typedef void (*functionPtrType)(int, int); functionPtrType addPtr; void add(int a, int b) { std::cout << a + b << std::endl; } int main() { addPtr = add; // 将函数地址赋给函数指针变量 addPtr(2, 3); // 等同于调用add(2, 3) return 0; }
输出结果为5
。在上述例子中,addPtr
指向了add
函数,并通过函数指针调用了该函数。