프로그래밍/자료구조
C++ STL-벡터(std::vector)-사용법
강경민님
2023. 9. 19. 10:01
다양한 선언 방법
std::vector<int> vec; //크기가 0인 벡터 선언
std::vector<int> vec = {1,2,3,4,5}; //지정한 초기값으로 이루어진 크기가 5인 벡터 선언
std::vector<int> vec(10); //크기가 10인 벡터 선언
std::vector<int> vec(10, 5); //크기가 10이고, 모든 원소가 5로 초기화된 벡터 선언
값 추가
std::vector<int> vec; //비어 있는 벡터 생성: {}
vec.push_back(1); //맨 뒤에 1 추가: {1}
vec.push_back(2); //맨 뒤에 2 추가: {1, 2}
vec.insert(vec.begin(), 0); //맨 앞에 0 추가: {0, 1, 2}
vec.insert(find(vec.begin(), vec.end(), 1), 4); //1 앞에 4 추가: {0, 4, 1, 2}
값 삭제
std::vector<int> vec = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
//맨 마지막 원소 하나 제거: {0, 1, 2, 3, 4, 5, 6, 7, 8}
vec.pop_back();
//맨 처음 원소 하나 제거: {1, 2, 3, 4, 5, 6, 7, 8}
vec.erase(vec.begin());
//1번째 원소부터 4번째 앞 원소까지 제거: {1, 5, 6, 7, 8}
vec.erase(vec.begin() + 1, vec.begin() + 4);
그 외 함수
clear() : 모든 원소 제거
reserve(capacity) : 매개변수로 지정한 값이 현재 용량보다 크면 재할당 같거나 작으면 아무동작 하지 않음
shrink_to_fit() : 여분의 메모리 공간 해제