Game Develop

[C++] vector 본문

C++/C++

[C++] vector

MaxLevel 2022. 11. 1. 23:42

 

vector의 멤버함수 capacity는, 현재 메모리의 재할당없이 몇개의 원소를 집어 넣을 수 있느냐를 알려주고,

size()는 실제로 원소가 몇개 들어가있는지를 알려준다.

 

capacity이상으로 원소를 집어넣으려 할 경우 내부적으로 메모리의 재할당이 이루어진다.

재할당 크기는 약 1.5배이다. 

 

 

 

 

capacity가 늘어난 이후에는 원소를 삭제하더라도 capacity가 줄어들지는 않는다.

 

vector의 원소를 얻으려할 때 []연산자와 at연산자를 사용하는 방법이 있다.

[]연산자는 범위검사를 하지않고, at연산자는 범위검사를 한다.

이런게 으레 그렇듯, 범위검사를 하는 at보다는 그냥 []이 조금 더 빠르긴 하다.

'C++ > C++' 카테고리의 다른 글

[C++] erase()와 iterator  (1) 2022.11.15
[C++] Iterator (반복자)  (0) 2022.11.02
[C++] map에서 원소 넣을때 insert도 활용하자.  (0) 2022.10.29
[C++] String 성능에 관하여  (0) 2022.10.26
[C++] 포인터와 배열의 차이.  (1) 2022.10.08