항목 14 : reserve는 필요 없이 메모리가 재할당되는 것을 막아 준다.
이 이야기에 앞서 vector 와 string 에 대해서 이야기를 하자면, vector 와 string 은 실제로 배열처럼 사용 할수가 있다. 이런 배열 처럼 사용 할수 있는 점 때문에. vector와 string으로 만든 메모리는 실제로 배열처럼 차례대로 메모리에 올라간다. 여기서 잠깐, 그렇다면 어떻게 동적으로들어 가는 메모리가 배열처럼 차례대로 메모리에 올라가느냐? 배열 처럼 차례대로 메모리에 올리기 위해서 vector 와 string 은 미리 메모리 공간을 기본값만큼 할당 받아 놓고, 메모리가 새롭게 추가 되면, 이 공간에 넣어 둠으로써 배열처럼 작동시키는 것이다. 이 할당 받아 놓은것을 최대 용량으로 표현하겠다. 그렇다면 어떻게 vector 와 string에 들어가는 원소의 갯수에 제한이 없느냐..
책 정리/Effective STL
2008. 7. 16. 00:07
최근댓글