2014. 10. 21. 22:07
[STL]Vector DATA_OLD/C/C++2014. 10. 21. 22:07
벡터Vector란
- 배열처럼 요소에 직접 접근 가능한 배열 같은 기능
- 요소의 개수에 맞게 자동으로 메무리를 재할당하여 크기를 늘릴 수 있는 동적 배열
- 템플릿 기반이므로 원하는 타입으로 사용 가능(유저가 선언한 클래스나 구조체도 가능)
- 읽기 속도가 빠르므로 정렬/이진 탐색등의 알고리즘에 효율적
- 삽입/삭제 시에는 메모리를 밀고 당기는 처리가 필요하기 때문에 느림
헤더 파일
#include <vector>
선언 방식
vector<T> example(5);
//T 타입의 크기 5짜리 example이라는 배열 선언
example[index] 방식으로 해당 index에 있는 배열 원소에 바로 접근 가능
사용 메소드
push_back(5) //맨 뒤에 5를 추가
size() //원소의 갯수 반환
begin() //벡터의 첫 번째 원소의 주소 반환
end() //벡터의 마지막 원소의 주소 반환
front() //벡터의 첫번째 원소 반환
back() //벡터의 마지막 원소 반환
insert( 주소, 원소 ) //해당 주소에 원소 삽입(배열 갯수 1 증가)
erase( iterator ) //iterator가 위치한 주소의 원소 삭제
resize( 값 ) //값만큼 벡터 갯수를 재조정. 값 이상일 경우 뒤는 잘림
empty() //비어있으면 1, 차있으면 0 반환
at( index ) //index위치에 있는 원소 값 반환
clear() //모든 원소 제거
'DATA_OLD > C/C++' 카테고리의 다른 글
[C++] const의 쓰임새 (0) | 2014.11.11 |
---|---|
[C++] 범위 기반 for문 (0) | 2014.11.11 |
[C++] switch문 내에서 변수 선언에 대해 (0) | 2014.11.11 |
[STL] List / Map (0) | 2014.10.21 |
[C++] 입력받은 수를 2진수로 출력하기 (0) | 2014.10.08 |