函数指针(C++ Primer Plus 第七章)
关于本书中,第七章的一个比较难理解的函数指针
声明函数指针
通常,要声明指向特定类型函数的指针,可以首先编写这种函数的原型,然后用(*pf)替换函数名。这样pf就是这类函数的指针。
double (*pf)(int);
const double* f1(const double*, int n); //f1为返回值为const double*的函数
const double* (*pa)(const double*, int n); //p1为指向返回值为const double*的函数的指针
const double* (*pa)(const double*, int n) = f1; //初始化,函数名也可以理解为指向函数的指针
难理解的函数指针
const double* (*pa[3])(const double*, int) = {f1, f2, f3}; //pa是一个包含3个指针的数组
//当定义了一个函数指针数组后,能否在定义一个指针用于保存这个数组的地址呢?
//这个指针就是指向函数指针数组的指针
const double* (*(*pd)[3])(const double*, int) = &pa;
//一个指向有3个元素每个元素为指向一个返回值const double*的函数的数组的指针
【华为OD机试真题】可以转到CSDN相关专栏订阅学习:https://blog.csdn.net/weixin_45541762/article/details/129903356

浙公网安备 33010602011771号