[C++] 30. 벡터(vector)란 무엇인가?

2022. 6. 14. 19:43코딩 1막 <C++개념편>

728x90
#include <iostream>
#include <string>
#include <vector>

using namespace std;

	// 벡터
	// 벡터는 동적배열을 편하게 만든것
	// 그렇기 때문에 다양한 기능이 존재한다
void main()
{
	// 벡터의 기능
	// push_back(), insert(), erase(), size() 등이 자주 쓰인다.
	
	// [문법] vector<데이터타입> 변수명;
	vector<int> intVec;	
	// vector<int> intVec(10);	생성자가 있을경우 값(10)만큼 10개의 공간을 미리 확보한다

	// push_back(값) : 가변배열 vector에 요소를 추가해준다 따라서 총 13개의 공간확보
	// 많이 쓸수록 과부화가 발생하기 때문에 유의하자
	intVec.push_back(10);
	intVec.push_back(20);
	intVec.push_back(30);

	// begin()은 반복자의 첫번째를 가져온다
	// begin() + i 하면 i번째의 위치를 말함
	// insert(반복자위치, 값) : 반복자 위치에 값을 추가한다.
	intVec.insert(intVec.begin() + 1, 50);

	// erase(반복자위치) : 반복자위치에 요소를 제거한다.
	intVec.erase(intVec.begin() + 0);

	// size()는 요소의 갯수를 반환, 현재 3개가 push_back 되었고 insert 1개가 추가되었다가 하나를 지워서
	// size()는 3을 리턴한다
	cout << intVec.size() << endl;			// 3 출력

	for (int i = 0; i < intVec.size(); i++)	// 벡터 요소의 갯수
	{
		cout << intVec[i] << endl;			// 배열이기때문에 인덱스로 접근이 가능함
	}
}

출력 결과

* 주로 사용되는 벡터의 기능만 알아도 괜찮다!

push_back(), insert(), erase(), size() 등이 자주 쓰인다.
728x90