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;
}

  

posted @ 2016-09-16 10:24  KennyRom  阅读(244)  评论(0编辑  收藏  举报