//函数参数为函数指针
#include<iostream>
using namespace std;
//C++ 11 方法声明类型别名具体可看我的其他博文
using pfunctype = int(int, int);
//做函数参数的函数指针//声明
int (*pfunc)(int, int);
//注意 :int *pfunc(int,int);这样定义是一个普通函数返回一个int型的指针
int sumandproduct(int a, int b, pfunctype *pfunc);
int product(int a, int b)
{
cout << "这两个数相减为" << (a - b) << endl;
return 0;
}
int sumandproduct(int a, int b, pfunctype *pfunc)
{
cout << "这两个数相加为" << (a + b) << endl;
(*pfunc)(a, b);//或pfunc(a,b)
return 0;
}
int main()
{
sumandproduct(4, 2, product);//或者&product;
system("pause");
return 0;
}
#include<iostream>
using namespace std;
//C++ 11 方法声明类型别名具体可看我的其他博文
using pfunctype = int(int, int);
//做函数参数的函数指针//声明
int (*pfunc)(int, int);
//注意 :int *pfunc(int,int);这样定义是一个普通函数返回一个int型的指针
int sumandproduct(int a, int b, pfunctype *pfunc);
int product(int a, int b)
{
cout << "这两个数相减为" << (a - b) << endl;
return 0;
}
int sumandproduct(int a, int b, pfunctype *pfunc)
{
cout << "这两个数相加为" << (a + b) << endl;
(*pfunc)(a, b);//或pfunc(a,b)
return 0;
}
int main()
{
sumandproduct(4, 2, product);//或者&product;
system("pause");
return 0;
}