vector v(n): N의 크기만큼 배열을 생성하며, 동시에 각 배열의 값을 0으로 초기화한다.
vector v(1001)를 선언하면 0으로 채워진 1001개의 배열이 할당됩니다. (즉 size가 1001이고 capacity또한 1001인 상황)
이후 push_back을 시행하면 생성된 배열 뒤에 값이 들어갑니다.
즉, vector v(1001)를 선언하면 0 0 0 0 0 ..(1001개의 0).. 0 1 2 2 3 3 3 4 4 4 4 5 ...이 최종적인 vector의 값이므로 결과가 0이 나옵니다.
조금 더 자세히는 size와 capacity 그리고 vector.resize(n)과 vector.reserve(n) 함수의 사용법 까지도 찾아서 읽어보시면 도움이 될 것 같습니다.
gyun6266 1년 전
아래 코드에서 주석 처리한 부분같이 쓰면 결과가 계속 0이 나오더라구요..
왜 그런지 아시는 고수님 있으실까요?