공부/C++

벡터(Vector) 재할당 속도 줄이는 법

셩잇님 2023. 2. 7. 13:27
반응형

 

 

벡터 재할당 속도를 낮추려면

1. 벡터를 초기화할 때 벡터에 더 많은 메모리를 미리 할당합니다.

2. 벡터에 새 요소를 추가하기 전에 벡터의 크기를 수동으로 늘릴 수 있습니다.

 


 

다음은 예시입니다.

1. 더 큰 크기로 벡터 초기화

std::vector<int> v(1000);  // Initialize vector with 1000 elements

2. reserve()를 사용하여 메모리를 사전 할당합니다.

std::vector<int> v;
v.reserve(1000);   // Preallocate memory for 1000 elements


3. resize()를 사용하여 벡터의 크기를 수동으로 증가시켜줍니다.

std::vector<int> v;
v.resize(1000);    // Increase the size of the vector to 1000 elements

 

더 많은 메모리를 사전 할당하면 벡터 재할당 빈도를 줄이고 메모리 사용량 증가 속도를 늦출 수 있습니다. 그러나 너무 많은 메모리를 미리 할당하면 낭비가 될 수 있으므로 올바른 균형을 찾는 것이 중요합니다. 그러나 이 외에도 C++ 11이후부턴 shrink_to_fit이라는 함수가 등장하였으니, 아래 참고 자료 링크를 확인하시기 바랍니다.

 

 


 

 

참고 자료 :

https://blog.naver.com/ruvendix/222102063910

 

std::vector에서 실제로 할당된 메모리를 줄이는 방법

안녕하세요 루벤딕스입니다~ 이번 포스팅에서는 std::vector에 할당된 메모리를 실제로 줄이는 방법을 알려...

blog.naver.com

 

 

 

반응형