函数指针与回调函数
函数指针与回调函数 函数指针 函数指针是指向函数的指针变量。 通常我们说的指针变量是指向一个整型、字符型或数组等变量,而函数指针是指向函数。 函数指针可以像一般函数一样,用于调用函数、传递参数。 函数指针变量的声明: typedef int (*fun_ptr)(int,int); // 声明一个指向同样参数、返回值的函数指针类型 eg: #include<bits/stdc++.h> using namespace std; int max(int a, int b) { return a > b ? a : b; } int main() { int (*p)(int, int) = &max; int a = 2, b = 1, c = 3, d = 0; cout << p(a, b) << endl; } 回调函数 回调函数是指函数指针作为某个函数的参数 函数指针变量可以作为某个函数的参数来使用的,回调函数就是一个通过函数指针调用的函数。 简单讲:回调函数是由别人的函数执行时调用你实现的函数。 #include<bits/stdc++.h> using namespace std; void populate_array(int *array, int arraySize, int (*getNextValue)(void)) { for (int i = 0; i <