练习6.54:编写函数的声明,令其接收两个int形参并且返回类型也是int;然后声明一个vector对象,令其元素是指向该函数的指针。
练习 6.55:编写4个函数,分别对两个int值执行加、减、乘、除运算;在上一题创建的vector对象中保存这些函数的指针。
练习 6.56:调用上述vector对象的每个元素并输出其结果。
#include <iostream>
#include <vector>
using std::cout;
using std::endl;
using std::vector;
int addition(int a, int b)
{
return (a+b);
}
int subtraction(int a, int b)
{
return (a-b);
}
int multiplication(int a, int b)
{
return (a*b);
}
int divison(int a, int b)
{
return (a/b);
}
int main()
{
typedef int (*funcP)(int, int);
vector<funcP> vec = {addition, subtraction, multiplication, divison};
for (auto p : vec)
cout << p(10, 2) << endl; //等价于 cout << (*p)(10, 2) << endl;
return 0;
}