C++Primer第五版 练习12.6(解答)

来源:互联网 时间:1970-01-01

C++Primer第五版 练习12.6(解答),有需要的朋友可以参考下。


练习12.6:编写函数,返回一个动态分配的int的vector。将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中。再将vector传递给另一个函数,打印读入的值。记得在恰当的时刻delete vector。

/**练习12.6 *2015/11/2*问题描述:练习12.6:编写函数,返回一个动态分配的int的vector。将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中。再将vector传递给另一个函数,打印读入的值。记得在恰当的时刻delete vector。 *说明:指针学习 fun(),fun2(),fun3() 分别实现三个函数的要求 *作者:Nick Feng*邮箱:[email protected] */ #include <iostream>#include <vector>#include <memory>using namespace std;/*编写函数,返回一个动态分配的int的vector。*/ vector<int>* fun(){ vector<int> *p = new vector<int>; return p;//分配一个动态内存 delete p;}/*将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中。 */vector<int>* fun2(){ vector<int>*q = fun(); int val; while(cin >> val) (*q).push_back(val);//将这些数字压入到vector中 return q; delete q;}/*再将vector传递给另一个函数,打印读入的值。记得在恰当的时刻delete vector。*/ void fun3(){ vector<int>*r = fun2(); for(int i = 0; i != (*r).size(); ++i)cout << (*r)[i] << " ";//打印序列 cout << endl; delete r;}int main(){ fun3(); return 0;}

版权声明:本文为博主原创文章,未经博主允许不得转载。



相关阅读:
Top