※ std::array 요약
std::array는 C++11에 새롭게 추가된 컨테이너 라이브러리로써, 크기가 고정되어 있다는 것을 제외하면 std::vector와 비슷하다.
크기가 고정이므로 스택에 저장되며 C++03까지는 없었던 고정 길이 배열 자료구조 컨테이너로써 기존의 배열을 대체하기에 완벽하다.

※ std::array 특징
- 배열을 대체할 수 있다.
- 정적 배열이므로 스택에 저장된다. (std::vector는 힙 메모리에 저장된다!)
- 데이터가 연속된 위치에 저장되므로 랜덤 액세스가 가능하고 접근 속도도 빠르다.
- 정적이므로 push_back(), pop_back(), insert(), erase(), clear(), resize(), reserve(), capacity()멤버 함수는 지원하지 않는다.

※ std::array를 사용해야 하는 경우
- C++11이 지원되는 컴파일러라면 배열 대신 사용하면 좋다.
(필자는 C++11이 지원되는 컴파일러에서 작업하면 배열 대신 무조건 std::array를 사용한다. STL과 새롭게 추가되는 문법 등과의 결합도가 좋고 속도도 빠르며, 무엇보다 (조금이지만)편하기 때문이다.)


+ Recent posts