C++primer 练习12.6
题目:编写函数,返回一个动态分配的int的vector。将此vector传递给另一个函数,这个函数读取标准输入,将读入的值保存在vector元素中。
再将vector传递给另外一个函数,打印读入的值。记得在恰当的时刻delete vector。
#include<iostream> #include<vector> using namespace std; //返回一个动态分配的int的vector vector<int>*refun() { return new vector<int>; } //读取标准输入 void input(vector<int>*p) { int i; while (cin >> i) p->push_back(i); } void output(vector<int>*p) { for (auto i : *p) cout << i << endl; delete p; p = nullptr; } int main() { auto ptr = refun(); input(ptr); output(ptr); return 0; }