1 minute read

벡터 선언 및 사용 방법

std::vector을 사용하여 선언

std::vector var_name 형식으로 선언 합니다.

꺽쇠 안에 에는 템플릿 매개변수를 지정하면 됩니다.

템플릿에 대해서도 추후에 알아보도록 하겠습니다!

vector는 범용 컨테이너(Generic container) 인데요, 이 뜻은 꺽쇠 안에 거의 모든 객체를 담을 수 있다는 뜻 입니다.

int 형 벡터 선언해보기

std::vector<int> my_vector = {1,2,3};
my_vector
{ 1, 2, 3 }

벡터 다루기

1- 벡터에 데이터 삽입/제거

다음으로 벡터의 데이터를 삽입/제거 하는 방법을 알아보겠습니다.

1-1) push_back을 사용하여 벡터의 마지막 위치에 데이터를 삽입할 수 있습니다.

my_vector.push_back(4);
my_vector
{ 1, 2, 3, 4 }
my_vector.push_back(5);
my_vector
{ 1, 2, 3, 4, 5 }

1-2) pop_back을 사용하여 벡터의 마지막 위치에 있는 데이터를 제거할 수 있습니다.

my_vector.pop_back()
my_vector // 제일 뒤에 있던 5가 제거 됨
{ 1, 2, 3, 4 }
my_vector.pop_back()
my_vector // 제일 뒤에 있던 4가 제거 됨
{ 1, 2, 3 }

2- 벡터의 위치 참조 front,back

my_vector.front()
1
my_vector.back()
3

3- 벡터의 iterator begin,end

my_vector.begin()
@0x557716923690
my_vector.end()
@0x5577178724c0
// iterator 사용 예제
using namespace std;
vector<int>::iterator it; // iterator 선언
it = my_vector.begin()
@0x7fbde32bc048
*it
1
it = my_vector.end()
@0x7fbde32bc048
*(it-1)
3
*(it+1)
5
my_vector
{ 1, 2, 3 }
/*
참고 사항
v: [ 1 | 2 | 3 | 4 | ... | 999 ]
     🡑                      🡑     🡑
   front()                back() end()
     🡑
   begin()
*/

4- 벡터의 Capacity 알아보기

size : 크기

empty : 비어있는지 확인 true/false가 나옴 조건문에 많이 사용

my_vector.size()
3
my_vector.empty()
false
my_vector.max_size()
2305843009213693951

5- Modifiers

insert : 원하는 위치에 삽입

delete : 원하는 위치 데이터 제거

using namespace std;
vector<int>::iterator it;
vector<int> my_vector = {1,2,3};
it = my_vector.begin()
@0x7f86ddac6028
my_vector.insert(it,2,300)
@0x55fa1cc51780
my_vector
{ 300, 300, 1, 2, 3 }
my_vector.erase(my_vector.begin());
my_vector
{ 300, 1, 2, 3 }

Updated: