나는 STL을 놀래키다가, "나는 2 차원 어레이를 만들 것"이라고 생각했다. 좋아, 여기까지잘못된 값을 가진 2 차원 벡터
vector< vector<int> > vetor;
vetor.resize(10);
vetor[0].resize(10);
for(int i = 0; i < vetor.capacity(); i++){
for(int h = 0; h < vetor[0].capacity();h++){
vetor[i][h] = h;
}
}
:하지만이 코딩 어떤 ...
. 내가 배열 값이 용도를 표시하려고 할 때 :
for(int i = 0; i < vetor.capacity(); i++){
cout << "LINE " << i << ": ";
for(int h = 0; h < vetor[0].capacity();h++){
cout << vetor[i][h] <<" ";
}
cout << "\n";
}
을 그리고 그 결과는 정말 잘못 내 프로그램에 무슨 일
LINE 0: 4 5 6 7 8 9 6 7 8 9
LINE 1: 0 1 2 3 0 1 2 3 0 1
LINE 2: 0 1 2 3 0 1 2 3 0 1
LINE 3: 0 1 2 3 0 1 2 3 0 1
LINE 4: 0 1 2 3 0 1 2 3 0 1
LINE 5: 0 1 2 3 0 1 2 3 0 1
LINE 6: 0 1 2 3 0 1 2 3 0 1
LINE 7: 0 1 2 3 0 1 2 3 0 1
LINE 8: 0 1 2 3 0 1 2 3 4 5
LINE 9: 0 1 2 3 4 5 6 7 8 9
? 올바른 값을 인쇄하지 않습니다!
, 그는 (크기 '를 카운트 할 필요)'하지 'capacity()'는이 경우에도 동일 할 것입니다. –
이상 :'std :: array <10, std :: array <10, int>>' –
그러나 vetor.resize (x) 및 vetor [0] .resize (y)의 크기를 조정할 때 수행중인 작업은 무엇입니까? 어디에서 볼 수 있습니까? –