vector capacity
vector에 할당되는 메모리크기를 알아보는 방법이다.
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v1;
for (int cnt = 0; cnt <= 64 ; ++cnt)
{
v1.push_back(cnt);
cout << "[" << v1.size() << ", " << v1.capacity() << "]" << endl;
}
return 0;
}
결과는
vector의 크기( vector.size() )와 capacity가 같아졌을때,
현재 capacity / 2 (소수점 생략) 의 값만큼 확장되는것을 알 수 있다.
windows 10 64bit에서 해본 결과이다.
참고) vector capacity까지 초기화 하기.
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v1(5);
cout << v1.capacity() << endl;
vector<int>().swap(v1); // 5-> 0으로 초기화된다.
cout << v1.capacity() << endl;
return 0;
}
반응형
'Language > C++' 카테고리의 다른 글
c++ malloc new 차이점? (0) | 2019.01.26 |
---|---|
c++ thread, mutex, atomic (0) | 2019.01.11 |
c++ Operator (0) | 2018.12.29 |