-1
중첩 벡터를 사용하여 놀고 있었고 임의의 요소를 출력하여 출력을 보았습니다. 범위를 벗어나면 오류가 발생하지 않는 것으로 나타났습니다. 단순히 값으로 0을 반환합니다.벡터가 범위를 벗어나면 출력으로 0을 제공합니까?
왜 이런가요?
인덱스를 기준으로 범위를 벗어난 요소를 호출 할 때마다 벡터 크기가 조정되고 0으로 초기화됩니까? 이 0
그냥 단순한 우연의 일치 인쇄 것으로,
#include <iostream>
#include <vector>
int main(){
std::vector<std::vector<int>> matrix;
std::vector<int> temp;
temp.push_back(1);
temp.push_back(2);
matrix.push_back(temp);
std::cout << matrix[0][45] << std::endl;
return 0;
}
고마워요! 어쨌든 제가 실수를하게 만들 수 있습니까? – Hadi
@Hadi 경계를 확인하고 이에 따라 응답하십시오. – deW1
@Hadi '[]] 대신'at()'를 사용하십시오 : – Justin