본문 바로가기
C | C++/개념정리

[C/C++] vector 초기화 방법

by zyeon 2023. 8. 5.

1. 선언시 초기화

vector <int> v = {1,2,3,4);
//결과 : 1 2 3 4

배열과 같이 선언시 직접 할당 가능하다.

 

2. 선언시 초기화2

vector <int> v(3,1);
//결과 : 1 1 1

위와 같이 선언하면 3의 크기로 선언되고 1로 초기화 된다.

 

3. array로 부터 초기화

 int arr[] = { 1, 2, 3 };
 int n = sizeof(arr) / sizeof(arr[0]);
 
 vector<int> vect(arr, arr + n);
 //결과 : 1 2 3

 배열의 값으로 벡터를 초기화 해준다.

 

4. 다른 vector로 부터 초기화

vector<int> vect1{ 1, 2, 3 };
vector<int> vect2(vect1.begin(), vect1.end());

//결과 : 1 2 3

다른 벡터의 값으로 초기화 해준다.

array와의 다른점은 배열의 경우는 배열의 끝을 알지 못하기때문에 n을 구해줘야했지만

vector의 경우 끝을 가르키는 end함수가 존재하기 때문에 구할 필요가 없다.

 

5. fill함수를 통한 초기화

vector<int> v(3);
fill(vec.begin(),vec.end(),1);
//결과 : 1 1 1

 fill 함수를 통해서 위와 같이 초기화 할 수 있다.

 

댓글