선언
vector<int> vec1;
마지막 요소에 데이터 추가
vec1.push_back(10);
vec1.push_back(20);
마지막 요소의 데이터 삭제
vec1.pop_back();
특정 요소 삭제
(0 base 에서 4, 5 번 요소 삭제)
vec1.erase(vec1.begin() + 3, vec1.begin() + 5);
전체 데이터 삭제
vec1.clear();
데이터 순환
for (iter = vec1.begin(); iter != vec1.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec1 size = %zd \n\n", vec1.size());
데이터 복사
vector<int> vec2 = vector<int>(vec1.begin(), vec1.begin() + 4);
for (iter = vec2.begin(); iter != vec2.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
예제
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec1;
vector<int>::iterator iter;
printf("vec1 size = %zd \n\n", vec1.size());
vec1.push_back(10);
vec1.push_back(20);
printf("vec1 size = %zd \n\n", vec1.size());
for (iter = vec1.begin(); iter != vec1.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec1 size = %zd \n\n", vec1.size());
vec1.clear();
printf("vec1 size = %zd \n\n", vec1.size());
vec1.resize(5);
printf("vec1 size = %zd \n\n", vec1.size());
vec1.push_back(100);
vec1.push_back(200);
printf("vec1 size = %zd \n\n", vec1.size());
vec1.pop_back();
printf("vec1 size = %zd \n\n", vec1.size());
iter = vec1.begin();
*iter = 111;
iter++;
*iter = 222;
iter++;
*iter = 333;
for (iter = vec1.begin(); iter != vec1.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec1 size = %zd \n\n", vec1.size());
iter = vec1.end() - 1;
*iter = 999;
for (iter = vec1.begin(); iter != vec1.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec1 size = %zd \n\n", vec1.size());
vec1.erase(vec1.begin() + 3, vec1.begin() + 5);
for (iter = vec1.begin(); iter != vec1.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec1 size = %zd \n\n", vec1.size());
vector<int> vec2 = vector<int>(vec1.begin(), vec1.begin() + 4);
for (iter = vec2.begin(); iter != vec2.end(); ++iter)
{
printf("%d \n", (int)(*iter));
}
printf("vec2 size = %zd \n\n", vec1.size());
int userInput;
cin >> userInput;
return 0;
}
STL
STL(Standard Template Library) 템플릿을 사용하여 자료형에 관계없이 범용적인 프로그래밍을 가능하게 하는 라이브러리 STL 구성 요소 Container 기본 자료형 또는 사용자 정의 자료형을 담는 자료 구조
doublerabbits.tistory.com
'C++ > C++ Common' 카테고리의 다른 글
queue (0) | 2022.08.06 |
---|---|
map (0) | 2022.08.06 |
list (0) | 2022.08.06 |
STL (0) | 2022.08.06 |
Callback function (0) | 2022.07.18 |