《C++ primer》练习6.54-6.56:函数指针定义并调用

《C++ primer》里面讲到函数指针定义并调用,做一下练习6.54-6.56,题目如下:

vector元素的类型是函数指针的类型是int (*)(int, int),指向的元素是有两个int形参,返回类型也是int的函数。

cpp 复制代码
#include <vector>
#include <iostream>
using namespace std;

int add(int num1, int num2)
{
  return num1 + num2;
}
int subtract(int num1, int num2)
{
  return num1 - num2;
}
int multiply(int num1, int num2)
{
  return num1 * num2;
}
int divide(int num1, int num2)
{
  return num1 / num2;
}
int main()
{
  vector<int (*)(int, int)> a;
  a.push_back(add);
  a.push_back(subtract);
  a.push_back(multiply);
  a.push_back(divide);

  int res_add = a[0](6, 3);
  int res_subtract = a[1](6, 3);
  int res_multiply = a[2](6, 3);
  int res_divide = a[3](6, 3);
  cout << res_add << " " << res_subtract << " " << res_multiply << " " << res_divide;
  return 0;
}

输出

相关推荐
cany10006 分钟前
C++ -- 型号比对和constexpr
c++
楼田莉子7 分钟前
C++17新特性:结构化绑定/inline变量/if相关的变化
c++·后端·学习
翎沣12 分钟前
C++面向对象三大特性
开发语言·c++
无限进步_23 分钟前
【C++】C++11的类功能增强与STL变化
java·前端·数据结构·c++·后端·算法
小鱼️遨游40 分钟前
openCPU SDK 安装和第一次编译方法、注意事项
c++·opencpu·ml307
basketball61641 分钟前
C++ iostream 完全指南:从 cin/cout 到流式编程的奥秘
开发语言·c++
Hua-Jay1 小时前
OpenCV联合C++/Qt 学习笔记(二十二)----相机模型与投影及单目相机标定
c++·笔记·qt·opencv·学习·计算机视觉
计算机安禾2 小时前
【c++面向对象编程】第37篇:面向对象设计原则(一):单一职责与开闭原则
开发语言·c++·开闭原则
小明同学012 小时前
C++后端项目:统一大模型接入 SDK(三)
开发语言·c++
Brilliantwxx2 小时前
【C++】 继承与多态(下)
开发语言·c++