C++ primer 4th Exercise 4.28
题目:编写程序由从标准输入设备读入的元素数据建立一个
int 型 vector 对象,然后动态创建一个与该 vector 对
象大小一致的数组,把 vector 对象的所有元素复制给新
数组。
参考代码:
#include <iostream>
#include <vector>
using namespace std;
/*
C++ primer 4th
Exercise 4.28
*/
int main()
{
int input;
vector<int> ivec;
cout << "input a array of integery, end with -1:" << endl;
//获取元素,读入vector对象
while (cin >> input)
{
ivec.push_back(input);
if (input == -1)
break;
}
//建立动态数组
int demension = ivec.size();
int* pia = new int[demension];
//将vector对象的值复制给新数组
for (size_t ix = 0;ix != demension;++ix)
{
*(pia + ix) = ivec[ix];
cout << *(pia + ix) << ' ';
}
//释放动态空间
delete[] pia;
return 0;
}