hj12203   4년 전

프로그램 구동시 vector subscript out of range 오류 메시지가 나옵니다.

어느 부분때문에 범위를 벗어났다고 하는 건가요?

bupjae   4년 전

5번째 줄로 vector 를 만들었을 때는 vector 의 크기는 0입니다.

그런데 7번째 줄에서 배열의 크기를 벗어나는 원소의 주소를 요구하고 있기 때문에

이 프로그램의 결과는 정의되어 있지 않습니다. (Undefined Behavior)

아마 대부분의 구현체에서 런타임 에러가 발생할 것입니다.

   

덧붙여, std::fill 의 사용법도 잘못되었습니다. 

   

vector 를 특정 값으로 특정 크기로 초기화하고 싶으면 아래와 같이 하면 됩니다.   

hj12203   4년 전

감사합니다!

댓글을 작성하려면 로그인해야 합니다.