C++ primer(第五版) 练习 6.56 个人 code
2014-08-09 22:57
549 查看
C++ primer(第五版) 练习 6.56
题目:调用上述vector对象(练习 6.55中的)中的每个元素并输出其结果。
答:
第一次把函数声明跟定义写在了不同的文件,发现貌似跟书上讲的不太一样啊???
定义函数体的文件里面没有 #include 声明函数的文件,就可以编译,#include 了反而就重复声明了……
mypractice.h
mypractice.cpp 貌似这个文件该 #include "mypractice.h" 的吧?
执行结果:
C++ primer(第五版) 练习 6.56
题目:调用上述vector对象(练习 6.55中的)中的每个元素并输出其结果。
答:
第一次把函数声明跟定义写在了不同的文件,发现貌似跟书上讲的不太一样啊???
定义函数体的文件里面没有 #include 声明函数的文件,就可以编译,#include 了反而就重复声明了……
mypractice.h
/* mypractice.h 编写函数声明,令其接受两个int形参并且返回类型也是int; 然后声明一个vector对象,令其元素是指向该函数的指针。 编写4个函数,分别对两个int值执行加、减、乘、除运算;在上一题 创建的vector对象中保存指向这些函数的指针。 */ #include <vector> using std::vector; using pFunc= int (*)(int x, int y); vector<pFunc> iVal; int m_add(int a, int b); int m_dec(int a, int b); int m_mul(int a, int b); int m_div(int a, int b);
mypractice.cpp 貌似这个文件该 #include "mypractice.h" 的吧?
/* mypractice.cpp 定义 int m_add(int a, int b); int m_dec(int a, int b); int m_mul(int a, int b); int m_div(int a, int b); */ int m_add(int a, int b) { return a + b; } int m_dec(int a, int b) { return a - b; } int m_mul(int a, int b) { return a*b; } int m_div(int a, int b) { return a / b; }
/* mymain.cpp 调用上述vector对象中的每个元素并输出其结果。 */ #include <iostream> #include "mypractice.h" using std::cout; using std::endl; int main() { int v1 = 6, v2 = 3; iVal.push_back(m_add); iVal.push_back(m_dec); iVal.push_back(m_mul); iVal.push_back(m_div); for (auto a : iVal) cout << a(v1, v2) << endl; return 0; }
执行结果:
相关文章推荐
- C++ primer 第五版 中文版 练习 10.35 个人code
- C++ primer 第五版 中文版 练习 11.4 个人code
- C++ primer 第五版 中文版 练习 11.32 个人code
- C++ Primer 第五版 中文版 练习 12.27 个人code
- C++ Primer 第五版 中文版 练习 14.3 个人code
- C++ primer(第五版) 练习 3.17 个人code
- C++ primer(第五版) 练习 6.10 个人code
- C++ primer(第五版) 练习 7.2 个人 code
- C++ primer(第五版) 练习 7.15 个人 code
- C++ primer 第五版 中文版 练习 11.33 个人code
- C++ primer 第五版 中文版 练习 12.2 个人code
- C++ primer(第五版) 练习 3.32 个人code
- C++ primer(第五版) 练习 5.3 个人code
- C++ primer(第五版) 练习 5.17 个人code
- C++ primer(第五版) 练习 6.21 个人 code
- C++ primer(第五版) 练习 6.47 个人 code
- C++ primer(第五版) 练习 7.4 & 7.5 个人 code
- C++ primer 第五版 中文版 练习 12.6 个人code
- C++ primer 第五版 中文版 练习 12.24 个人code
- C++ Primer 第五版 中文版 练习 13.23 个人code