[C++] vector란? #11
1. C언어 스타일의 배열
C언어 스타일의 배열은 배열이 사용할 메모리 공간이 이미 정해져 있기 때문에,
배열의 길이를 더 길게하는 등의 작업을 하려면 코드가 매우 복잡해집니다.
2. C++의 vector
C++에서는 메모리 동적 할당과 해제를 자동으로 해주는 간편한 배열이 있습니다.
vector
는 자동으로 메모리를 관리해 더욱 편리하게 배열을 사용할 수 있습니다.
1
2
3
4
5
6
7
8
9
10
#include <vector>
int main() {
vector<int> list;
list.push_back(1);
list.push_back(2);
return 0;
}
위 코드에서 우선 vector
를 사용하기 위해선 vector
헤더 파일을 포함해야 합니다.
이후 vector
를 생성하는 방법은 vector<T>
와 같은 방식으로 합니다.
vector<T>
은 T
자료형을 원소로 가지는 vector
를 의미합니다.
생성된 vector
객체에 값을 넣는 때는 push_back()
메서드를 사용할 수 있습니다.
따라서 main
함수가 종료되기 직전 list
의 값을 시각화 한다면,
{ 1, 2 } 가 됩니다.
3. vector의 반복
vector
는 iterable
이라는 특징을 가지고 있어,
반복문을 더 간단하게 작성할 수 있습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <vector>
#include <iostream>
int main() {
vector<int> list;
list.push_back(1);
list.push_back(2);
list.push_back(3);
list.push_back(4);
for (int item : list) {
std::cout << item << " ";
}
return 0;
}
1
1 2 3 4
위 코드는 list
의 원소를 item
이라는 변수에 담아서 각각 원소를 순차적으로 반복해 출력하는 코드입니다.
This post is licensed under
CC BY 4.0
by the author.