ここでの答えは次のとおりです。
n2798 (C++0x のドラフト) より: ベクトルの要素は連続して格納されます。つまり、v が T が bool 以外の型のベクトルである場合、恒等式 &v[n] == &v[0 に従います。 ] + n for all 0 <= n < v.size()。
このプログラムは動作します:
#include <iostream>
#include <vector>
#include <iterator>
using namespace std;
int main(){
int k;
cin >> k; cout << endl << "k = " << k << endl;
ostream_iterator<int> oi(cout, " ");
vector<vector<int> > vpi;
while(k--)
{
vpi.push_back(vector<int>(istream_iterator<int>(cin), istream_iterator<int>()));
cin.clear();
cout<<"k = "<< k <<endl;
copy(vpi[vpi.size()-1].begin(), vpi[vpi.size()-1].end(), oi);
cout<<endl;
}
}
ベクトルの要素が同じサイズである必要があり、格納されるベクトルのサイズが事前にわからない場合、ベクトルはどのようにして連続してベクトルを格納できますか?
これが以前に尋ねられた場合は申し訳ありませんが、見つけることができませんでした。その場合は、リンクをドロップしてください。