C++ Primer 6.55

/*
 * 编写函数声明,令其接受两个int形参并且返回类型也是int;
 * 然后声明一个vector对象,令其元素是指向该函数的指针。
 *
 * 编写4个函数,分别对两个int值执行加、减、乘、除运算;
 * 在创建的vector对象中保存指向这些函数的指针。
 */

#include 

using Fun = int (*)(int, int);

int mAdd(int a, int b) {
    return a + b;
}

int mSub(int a, int b) {
    return a - b;
}

int mMul(int a, int b) {
    return a * b;
}

int mDiv(int a, int b) {
    return a / b;
}

int main() {
    std::vector vector;

    vector.push_back(mAdd);
    vector.push_back(mSub);
    vector.push_back(mMul);
    vector.push_back(mDiv);

    for (auto i: vector) {
        std::cout << i(10, 5) << std::endl;
    }

你可能感兴趣的:(C++ Primer 6.55)