vector<int> input = {1, 2, 3, 4, 17, 117, 517, 997};
cout<< "input vector at index -1 is: " << input[-1] <<endl;
통해 벡터 부정적인 지표를 결과한다 액세스 : 입력 인덱스 -1 것은 : 0 그러나 우리 때라도 사용할 경우 :연산자 [] 및 .at()는 코드 위 사용
vector<int> input = {1, 2, 3, 4, 17, 117, 517, 997};
cout<< "input vector at index -1 is: " << input.at(-1) <<endl;
결과는 다음과 같습니다. 색인 -1에 입력 한 내용은 다음과 같습니다. libC++ abi.dylib : 유형 std :: out_of_range : vector의 캐치되지 않는 예외로 종료.
나에게 이유를 설명 할 수 있습니까? 고맙습니다.
버그가 어떤 것인지 알려주실 수 있습니까? 그것은 모든 입력 벡터에 대해 보이지만 -1의 인덱스는 연산자 []를 사용할 때 항상 0입니다. – Feng
@ FengZhou 그 위치에 '0'이 표시되는 것은 우연의 일치입니다. 그것은 여전히 불법적 인 성명서입니다. 벡터의 내용을보고 있습니다. 볼 수없는 콘텐츠에는 '0'이 포함되어 있습니다. –
감사합니다. 응, 우연의 일치 야. – Feng