⚙️C,C++

[C++] vector 사용법

bananackck 2025. 2. 20. 22:45

[블로그 이전]

2021.02.07

 

vector 컨테이너 : 자동으로 메모리가 할당되는 배열(stack 이랑 자료구조 비슷)

1) 구조

: stack과 비슷

--> 뒤에서 삽입과 삭제 가능.

11) 선언

<vector> 헤어파일 추가 필수!

using namespace std; 선언!

🧵 선언

vector <자료형> 변수명; --> 비어있는 vector 생성

vector <자료형> 변수명(n); --> 기본값(0)으로 초기화 된 n개의 원소를 가지는 vector 생성

vector <자료형> 변수명(n,m); --> m으로 초기화 된 n개의 원소를 가지는 vector 생성

#include <vector>
using namespace std;

vector <int> vec;
vector <int> vec1(5);
vector <int> vec2(5,2);

 

111) vector의 멤버함수 - 참조

vector도 배열과 같은 구조를 가지고 있기 때문에 다음과 같이 접근

🎀 vec[n] or vec.at(n)

--> 둘 다 vector vec의 n번째 원소 참조;

--> but, vec.at(n)은 범위를 점검하므로 안전하다 & 느리다.

vec.front() --> 첫번째 원소 참조

vec.back() --> 마지막 원소 참조

1111) vector의 멤버함수 - 기타

vec.insert(n,m) --> n번째 위치에 m을 삽입.

vec.insert(n,p,m) --> n번째 위치에 p개의 m 삽입. (뒤에 있던 값은 뒤로 밀린다.)

🎀 vec.push_back(n) --> 마지막 원소 뒤에 n 삽입.

vec.clear --> 모든 원소 제거! (원소만 제거하고 메모리는 남음)

🎀 vec.pop_back() --> 마지막 원소 제거

vec.size() --> 원소의 개수 리턴(할당된 메모리 수 아님!!!!!!)