C++函数指针 (C++ Primer Plus总结)

C++函数指针心得

问题导入

首先我们描述一个背景,现在有Jack 和 Rose两个人,他们分别被要求在操场跑n圈,请算出他们每个人所需要的的时间是多少,假设Jack跑一圈要10分钟,Rose跑一圈15分钟(杠精勿扰
在这里插入图片描述
相信读者都能很快地给出这两个函数

到了这里,不妨拓展一下,假如有m个人,每个人跑一圈的时间可能相同,可能不同,也是分别被要求在操场跑n圈。两个人很好算,但是m个人 太多了 没有人愿意去算,所以现在请你用代码来计算m个人跑完n圈所需的时间

思路

有人说这很简单:

  • 每个人写一个函数 然后在main里面调用不就行了

有人又不情愿了:

  • 我写了这么多函数 还得一个一个调用 真麻烦 就不能写一个函数让他们自己输入自己的名字来显示吗

因此就有了函数指针

方案&个人理解

  • 声明:仅为个人理解,还请各位大佬轻喷

既然已经将每个人的速度写成了函数,那么现在只需要写一个显示函数,通过不同的名字也就是不同的参数来调用各个函数,就引入了函数指针

在这里插入图片描述

更高理解

  • 除了可以用作上述“偷懒“的方案,这个程序还可以看作是m个人,通过同一服务器来进行数据交互。
  • 而这个服务器是开放的,人数会不断增加,如果在早期将m个人的交互写成m个函数,或者通过m次函数调用,在后期人数增加的情况下,服务器的代码就需要不断地更新。
  • 而假如服务器的源码不能修改,又要能够承受人数的增加,就需要一个“接口”,通过不同的参数来返回不同的方法

猜你喜欢

转载自blog.csdn.net/qq_43477024/article/details/108584537
今日推荐