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;
}
本文解析了C++ Primer第四版习题4.28,演示如何从标准输入读取整数到vector中,再创建相同大小的动态数组并复制vector元素。通过示例代码详细介绍了整个过程。


被折叠的 条评论
为什么被折叠?



