3
鑑於下面的程序:複製從輸入流元素的固定數量的插入載體
#include <vector>
#include <iostream>
using namespace std;
int main()
{
unsigned n;
vector<double> xvec;
cin >> n;
while (xvec.size() < n)
{
double x;
cin >> x;
xvec.push_back(x);
}
return 0;
}
有一種方法,使用STL,寫此沒有明確的while循環(例如,使用複製()算法和插入器?)。
當運行時讀取元素的數量時(如在變量'n'中,這裏),我還沒有找到一種方法來做到這一點。
用['的std :: copy_n'](HTTP://en.cppreference的.com /瓦特/ CPP /算法/ copy_n)。但是你的代碼因爲沒有防守的輸入而被破壞了,讀'n'或'x'通常是未定義的行爲。 –
謝謝。代碼沒有被破壞;我有意識地選擇在輸入錯誤的情況下接受未定義的行爲。 – reddish
任何方式在C++ 98中做到這一點? – reddish