STL 컨테이너는 각각 자신만의 특징을 가지고 있습니다. 각 컨테이너의 특징은 성능('시간 복잡도'나 '공간 복잡도')과
STL 여러 요소에 영향을 주기 때문에 각 컨테이너의 특징을 이해하는 것은 상당히 중요합니다. 그래야 자신의 프로그램에 맞는 적절한 컨테이너를 선택하여 사용할 수 있습니다.
vector의 주요 특징은 앞장에서 배운 것처럼 '시퀀스 컨테이너'이면서 '연속 메모리 기반 컨테이너'입니다.
또 컨테이너에 데이터가 삽입될수록 메모리가 자라나게 됩니다. 연속 메모리 기반이므로 메모리가 자라나면
기존 메모리를 삭제하고 새로운 메모리를 재할당하여 사용합니다.
v.size() = 인덱스 사이즈 |
전형적 일반 벡터 생성하기 생성자를 이용한 메모리공간과 크기 확보하여 초기화 생성하기 |
간단한 예제
#include<iostream> |
반복자를 이용한 벡터 접근하기
#include<iostream> |
#include<iostream> #include<vector> using namespace std; int main() { vector<int> v; for(int i = 0 ; i < 10 ; i++) v.push_back(i); vector<int>::iterator iter; for( iter = v.begin() ; iter != v.end() ; iter++) cout << *iter << endl; cout << *iter << endl; cout << *iter+1 << endl; cout << *iter+2 << endl; return 0; } |
'소프트웨어 > C/VC++' 카테고리의 다른 글
[VSGesture] - Visual Studio 마우스 동작 인식 추가기능 (0) | 2012.05.16 |
---|---|
VC++ 버전별 배포방법과 재배포패키지(Redistributable Package) (0) | 2012.05.16 |
윈속 멀티스레드 서버 (Winsock) (0) | 2012.05.14 |
#pragma - once, pack, warning, comment, link (0) | 2012.05.14 |
간단한 C++ 매크로 만들기 (0) | 2010.07.21 |