我得到了一些向量的矢量問題。在我的程序中,我定義了一個向量矢量的動態存儲器,並調整了元素的大小和push_back。push_back矢量矢量
vector<vector<double> > *planes = new vector<vector<double> >
planes->resize(s_list->size()); // size of another vector that i need to use
vector<int>::iterator s_no;
for(s_no=s_list->begin(), int i=0; s_no!=s_list->end(); s_no++, i++){){
//where i i the indices of planes
//some codes for computing length, width
planes->at(i).push_back(lenght);
planes->at(i).push_back(width);
}
它的工作原理,我得到了所有值的打印我添加了什麼。然後,我改變了新的向量定義部分如下
vector<vector<double> > *planes =
new vector<vector<double> >(s_list->size(),vector<double>(2,0.0))
並刪除了調整大小的一部分。然後,當我得到了矢量矢量的打印輸出時,我得到了所有的值。你能否糾正這個問題。而不是push_back
planes->at(i).at(0)=lenght;
planes->at(i).at(1)=width;
的push_back()
請提供一個*完整的*,*可編譯的*例子來證明問題。 – 2011-06-03 00:29:55
你如何印刷它,你如何設置值? 'push_back'附加,你的初始向量從零開始。 – trutheality 2011-06-03 00:34:45
@ oli,它太大了。 – niro 2011-06-03 01:18:09