编写函数,返回一个动态分配的int的vector。将此vector传递给另一个函数,这个函数读取标准输入,将读入的值
保存在vector元素中。再将vector传递给另一个函数,打印读入的值。记得在恰当的时刻delete vector
// 12_6.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<memory> #include<iostream> #include<vector> using namespace std; //第一个函数,返回一个动态分配的int的vector vector<int> * func1() { //动态分配一个int的vector,使用默认初始化,此时p指向的对象是个空的vector<int> auto p = new vector<int>; return p; } //第二个函数读取标准输入 vector<int>* func2() { //得到第一个函数动态分配的对象 auto p = func1(); int i=0; cout << "please input your number:"; while (cin >> i) p->push_back(i); return p; } //第三个函数,打印读入的值 void func3() { //得到第一个函数动态分配的对象 auto p = func2(); for (auto beg = p->begin();beg != p->end();++beg) cout << *beg << " "; cout << endl; //记得释放第一个函数分配的动态内存,否则造成内存泄漏 delete p; } int main() { func3(); return 0; }