函数指针 & 返回函数指针的函数
一、函数指针的声明和使用
声明一个函数指针,给它赋值并调用它指向的函数
函数指针就是一个指向函数的指针。
先来简单看一下怎么使用函数指针。我们声明一个函数,和一个指向该函数类型的指针,让指针指向该函数并通过指针调用它。
#include<iostream>
using namespace std;
//定义一个返回值为int、参数表为(char,double)的函数
int func(char c, double d) {
cout << c << " = " << d << endl;
return 0;
}
int main() {
//p_int是一个指向返回值为int、参数表为(char,double)的函数的指针
int (*p_int)(char, double);
//让p_int指向函数func
p_int = &func;
//通过函数指针p_int调用func
(*p_int)('A',3.14);
return 0;
}
输出结果:A = 3.14
可以这样描述p_int
:它指向一个返回值为int
、参数表为(char,double)
的函数。声明函数指针的句子是int (*p_int)(char, double)
,我们可以这样理解它:
p_int
前面的*说明它是一个指针(*p_int)</