练习6.54
#include <iostream>
#include <vector>
using namespace std;
int func(int a, int b);
int (*func2)(int a, int b);
using A2 = int(*)(int a, int b);
int main()
{
vector<decltype(func)* > F1 = { func }; //方法1
vector<decltype(func2) > F2 = { func }; //方法2
vector<int(*)(int a, int b)> F3 = { func }; //方法3
vector<A2> F4 = { func }; //方法4
}
练习6.56
#include <iostream>
#include <vector>
using namespace std;
int add(int i, int j) {
return i + j;
}
int del(int i, int j) {
return i - j;
}
int multi(int i, int j) {
return i * j;
}
int divide(int i, int j) {
return i / j;
}
int main()
{
vector<int(*)(int, int)> func = { add,del,multi,divide };
for (auto &i : func)
cout << i(4, 5) << endl;
return 0;
}