函数指针(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*的函数的数组的指针
posted @   笑着的程序员  阅读(8)  评论(0编辑  收藏  举报  
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示