编写一个计算函数 compute ,对两个整数进行各种计算。
有一个形参为指向具体算法函数的指针,根据不同的实参函数,用不同的算法进行计算。
编写三个函数:求两个整数的最大值、最小值、和。分别用这三个函数作为实参,测试 compute 函数。
C++代码如下:
1 #include<iostream>
2 using namespace std;
3
4 int compute(int a, int b, int(*func)(int, int)) { //函数指针
5 return func(a, b);
6 }
7
8 int max(int a, int b) {
9 return (a > b) ? a : b;
10 }
11
12 int min(int a, int b) {
13 return(a < b) ? a : b;
14 }
15
16 int add(int a, int b) {
17 return a + b;
18 }
19
20 int main() {
21 int m, n, res_max, res_min, res_add;
22 cin >> m >> n;
23 res_max = compute(m, n, max);
24 res_min = compute(m, n, &min); //函数名代表的就是函数的起始地址,有无 & 都可以
25 res_add = compute(m, n, add);
26 cout << res_max << res_min << res_add << endl;
27 return 0;
28 }
原文链接: https://www.cnblogs.com/pgzhang/p/9090585.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/274649
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!