#DevStudy/C++

C++ STL - 순차컨테이너

검은_백조 2016. 4. 19. 18:15

순차 컨테이너


1. vector

#include <vector>

using namespace std;


선언

vector<int> v;

vector<int> v(5);    // v[0]~v[4] = 0 초기화

vector<int> v(5,1);    // v[0]~v[4] = 1 초기화


삽입 / 삭제

v.push_back(10);    // 가장 끝에 원소 10 추가

v.pop_back();


크기

v.size();        // 실제 들어있는 데이터의 크기

v.capacity();    // 현재 할당받은 메모리의 크기


재할당

v.resize(10);    // 데이터를 재할당

v.resize(10, 1);    // 데이터를 재할당 , 1로 초기화

v.reserve(10);    // 할당받은 메모리를 재할당

v.reserve(10, 1);    // 할당받은 메모리를 재할당 , 1로 초기화


출력

cout << v[0];

cout << v.at(0);    // 현재 vector 가진 메모리를 관리하는 기능도 갖고 있음. (범위가 벗어나면 예외 발생)

vector<int>::iterator it = v.begin() + 3;    // v[3]


탐색

for(vector<int>::size_type i = 0; i < v.size(); i++)

for(auto i = 0; i < v.size(); i++)    // C++ 11부터 가능.