STL - Container(vector)
벡터 선언 |
|
vector<type> v |
type 자료형을 저장하는 동적배열(벡터) 생성 |
vector<type> v(n) |
0으로 초기화된 n개의 원소를 가지는 벡터 생성 |
vector<type> v1(n, m) |
m으로 초기화된 n개의 원소를 가지는 벡터 생성 |
vector<type> v2(v1) |
v2는 v1 벡터를 복사해서 생성 |
vector<vector<type>> v3(n, vector<type>(m, 0)) |
n*m 크기의 2차원 벡터를 선언하고 0으로 초기화 |
vector<type> v4 = vector<type>(v1.begin()+2, v1.end()) |
v4는 v1의 2번째 원소부터 마지막 원소까지 복사하여 생성 |
벡터의 멤버함수 |
|
v.assign(n, x) |
n개의 원소값을 x로 할당 |
v.at(i), v[i] |
i번째 원소를 참조, at은 v[i]보다 느리지만 범위 점검함으로써 안전하다 |
v.front(), v.back() |
첫번째 원소 참조, 마지막 원소 참조 |
v.clear() |
모든 원소제거, size만 줄어들고 capacity는 그대로 |
v.push_back(x) |
마지막 원소 뒤에 x삽입 |
v.pop_back() |
마지막 원소제거 |
v.begin(), v.end() |
첫번째 원소를 가리킴, 마지막의 “다음”을 가리킴( iterator와 사용) |
v.size() |
원소의 개수 리턴 |
v.capacity() |
할당된 공간의 크기 리턴 |
v2.swap(v1) |
v1과 v2를 swap |
v.insert(n, m) |
n번째 위치에 m삽입 |
v.erase(v.begin()+1, v1.begin()+3) |
v의 1번째 index부터 2번째 index까지 erase |
v.empty() |
벡터가 비었으면(size = 0) true리턴 |
|
|
|
|
더 많은 함수들은 https://docs.microsoft.com/ko-kr/cpp/standard-library/vector-class?view=vs-2019 참조
'알고리즘, Module > C++ STL' 카테고리의 다른 글
STL - Container(stack, deque, queue) (0) | 2020.01.29 |
---|---|
C++ STL (0) | 2020.01.16 |