728x90
반응형
SMALL
C++ STL중 하나인 Vector 사용법에 대한 정리(+예제)
Vector
C++ 표준 라이브러리(Standard Template Library)에 있는 순차 컨테이너(Sequence Container)로 크기가 가변적으로 변하는 배열
- 자동으로 메모리가 할당되는 배열
- 메모리에 연속적으로 저장
- 맨 끝에서만 삽입과 삭제가 이루어짐
- template을 이용하기 때문에 자유롭게 데이터 타입 사용 가능
- 원소가 삽입될때 메모리 재할당이 발생 할 수 있음
Vector 선언
#include <vector>
vector<int> v; // vector<변수 타입> 이름 -> 크기 지정 X
vector<string> v(10) // vector<변수 타입> 이름(크기)
vector<int> v(10, 1) // vector<변수 타입> 이름(크기, 초기화 상수) -> 크기 10 벡터를 1로 초기화
vector<int> v = {1, 2, 3} // int 형 벡터 초기화
vector<vector<int>> v // 2차원 벡터
Vector 멤버함수
- 원소 접근
v[i] // vector의 i번째 원소 참조
v.at[i] // vector의 i번째 원소 참조
v.front() // vector의 첫번째 원소 참조
v.back() // vector의 마지막 원소 참조
//iterator 로 vector 아이템 접근
v.begin() // vector의 첫번째 위치의 iterator 리턴
v.end() // vector의 마지막 위치의 다음 iterator 리턴
- 삽입/삭제
vector<int> v
// v.push_back(데이터) -> 맨 끝에 데이터 삽입
v.push_back(10);
v.push_back(20);
// v.pop_back() -> 맨 끝 데이터 삭제
v.pop_back();
// v.insert(위치, 데이터) -> 원하는 위치에 데이터 삽입
v.insert(2, 30);
// v.erase(iter) -> 반복자를 사용하여 특정 원소의 데이터 삭제
auto iter = v.begin()'
v.erase(iter) // 벡터의 첫번째 위치의 원소 삭제
//v.clear() -> 모든 값 제거
v.clear();
- 크기
v.size(); //vector의 원소 갯수
v.capacity; //vector의 물리적 크기
728x90
반응형
LIST
'Language > C++' 카테고리의 다른 글
[C++] 클래스(Class) (0) | 2023.09.17 |
---|---|
[C++] 띄어쓰기 포함 문자열 입력 (0) | 2023.09.12 |
[C++] STL String 사용법 및 예제 (0) | 2023.08.15 |
[C++] 연산자 오버로딩(Operator Overloading) (0) | 2023.07.17 |
[C++] STL Pair 사용법 및 예제 (0) | 2023.07.10 |