Notice
Recent Posts
Recent Comments
:: ADVANCE ::
[STL] vector 본문
반응형
[STL] vector
생성자
vector v
vector v(n) : 초기화된 n개의 원소를 가진 vector
vector v(n, x) : x로 초기화된 n개의 원소를 가진 vector
vector v(v2) : v2 복사본. (복사 생성자 호출)
vector v(b, e) : 반복자 구간 [b, e)로 초기화된 원소를 가진 vector
멤버 함수
v.assign(n, x) : x값으로 n개의 원소를 할당
v.assign(b, e) : 반복자 구간 [b, e)로 할당
v.clear() : 모든 원소를 제거
q = v.erase(p) : p가 가리키는 원소를 제거. q는 다음 원소를 가리킴
q = v.insert(p, x) : p가 가리키는 위치에 x값을 삽입한다.
vector의 size()는 unsigned int 타입을 반환한다.
warning 없이 원소 참조나 size를 사용하려면
size_type을 사용하길 권장한다.
for( vector<int>::size_type i = 0; i < v.size(); i++) { v[i]; }
v[i] 와 v.at(i)는 성능은 같다.
하지만 []는 범위 점검 없이 동작하고 at()은 범위 점검을 하며 동작한다.
v.at(i)는 i가 0 <= i < size이면 i index의 참조를 반환하며 아니면 out_of_range 예외가 발생한다.
-> 원소 접근 속도를 아주 조금 높인다. ((빠름) [] > at())
반응형
'Algorithm > Algorithm' 카테고리의 다른 글
[Bit] bit 개수 세는 함수 (0) | 2016.10.12 |
---|---|
[BitMask] 에라토스테네스의 체 (0) | 2016.07.17 |
[STL] 어댑터 (0) | 2016.07.02 |
[STL] 알고리즘 (0) | 2016.07.02 |
[STL] 컨테이너, 반복자 (0) | 2016.06.30 |
Comments