본문 바로가기
  • 실행력이 모든걸 결정한다
유용한 정보, 링크

C++ Vector 사용법

by 김코더 김주역 2020. 9. 11.
반응형

Vector은 선언, 삽입, 삭제, 초기화가 간편한 라이브러리다.

 

이 포스팅에서는 다양한 Vector 사용 예시를 소개하겠다. 예시를 위주로 설명하였으니 충분히 이해가 될 것이다.

 

소스 코드를 보기 전에 한가지 설명해 두고싶은 것이 있는데 insert, erase 함수에서는 범위 지정 시 주소 값을 이용한다는 점과 범위의 마지막 값은 포함하지 않는다는 점 2가지를 꼭 기억해두자.

 

 

소스 코드

//김코더 김주역 kimcoder.tistory.com

#include <iostream>
#include <vector>
using namespace std;

int main(){
  cout << "벡터의 선언 -> ";
  vector<int> v(10,-1); //index 0~9를 -1로 초기화
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";

  cout << "벡터의 모든 요소 삭제 -> ";
  v.clear();
  cout << "벡터의 크기 : " << v.size();
  cout << "\n";

  cout << "벡터에 요소 추가 -> ";
  for(int i=0;i<7;i++) v.push_back(i+1);
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";

  cout << "벡터에 요소 삽입 -> ";
  v.insert(v.begin()+3,9); //index3에 9 삽입
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";

  cout << "벡터에 여러 요소 삽입 -> ";
  v.insert(v.begin()+1,4,8); //index1에 4개의 8 삽입 
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";

  cout << "벡터 요소 삭제 -> ";
  v.erase(v.begin()+3,v.begin()+9); //index 3~8의 요소 삭제
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";

  cout << "벡터에 또다른 벡터 삽입 -> ";
  vector<int> v2(3,-2);
  v.insert(v.begin()+2,v2.begin(),v2.end()); //index2에 v2삽입 
  for(int i=0;i<v.size();i++) cout << v[i] << " ";
  cout << "\n";
}

※ pop_back() : 벡터의 끝에 있는 원소 삭제

 

 

실행 결과

 

 

(참고 자료)

- vector, 다차원 vector 선언 및 초기화 : https://leeeegun.tistory.com/3

- vector, 다차원 vector 복사 : https://dbstndi6316.tistory.com/282

반응형

댓글