프로그래밍/C,C++

vector C++ STL(Standard Template Library)

coty 2022. 7. 9. 10:54
vector란?

C++에서 자동으로 메모리가 할당되는 배열이다. 알아서 메모리가 할당되고 해제된다.

vector 

 

vector 사용법

vector<자료형> 변수명; 

ex) vector<int> a;

 

vector<자료형> 변수명(5);

ex)vector<int> a(5);  -> vector a를 만들고 5개의 원소 0으로 초기화한다. 

 

vector<자료형> 변수명(5,2);

-> vector a를 만들고 5개의 원소 2로 초기화한다.

 

vector<자료형> v1(v2)

-> vector v2를 v1으로 복사한다.

 

vector의 멤버함수

vector<int> a(5,2)

 

//원소 접근

a[idx] -> idx번째 원소를 리턴

a.at(idx) -> idx번째 원소를 리턴(범위를 점검하기 때문에 a[idx]보다 안전)

a.front()/a.back() -> 처음과 마지막 원소를 리턴

a.begin() -> Iterator로 접근할 때, 가장 처음의 위치를 가리킨다.

#include <iostream>
#include <vector>

using namespace std;

int main(){

    vector<int>::iterator iter;
    vector<int> arr = {8,3,1,4,6};

    iter = arr.begin();

    cout << iter[2] << endl; // '1' 출력
}

 

a.end() ->Iterator로 접근할 때, 가장 마지막의 위치 다음을 가리킨다.

 

iterator => 컨테이너 내부를 순환하는 참조자, 컨테이너의 특정 위치를 나타냄.(포인터와 비슷한 개념)

 

//원소 삽입, 삭제