경험의 기록

Vector

자동으로 메모리가 할당되는 배열

 

예제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <vector>
using namespace std;
 
int main() {
    vector <int> v_1; // int형의 벡터 생성
    vector <int> v_2(5); // 0으로 초기화된 5개의 원소를 가지는 벡터 생성
    vector <int> v_3(53); // 3으로 초기화된 5개의 원소를 가지는 벡터 생성
 
    vector<int>::iterator iter; // 반복자
    cout << "v_1 : ";
    for (iter = v_1.begin(); iter != v_1.end(); iter++) {
        cout << *iter;
    }
    cout << endl << "v_2 : " ;
    for (iter = v_2.begin(); iter != v_2.end(); iter++) {
        cout << *iter;
    }
    cout << endl << "v_3 : " ;
    for (iter = v_3.begin(); iter != v_3.end(); iter++) {
        cout << *iter;
    }
    cout << endl << endl;
    // 반복자를 이용한 벡터의 원소 출력
    
    v_1.push_back(7); // 마지막 원소 뒤에 7 삽입
    v_2.pop_back(); // 마지막 원소 제거 (size만 줄어들고 capacity는 그대로)
 
    cout << "v_1 : ";
    for (iter = v_1.begin(); iter != v_1.end(); iter++) {
        cout << *iter;
    }
    cout << endl << "v_2 : ";
    for (iter = v_2.begin(); iter != v_2.end(); iter++) {
        cout << *iter;
    }
    cout << endl << "v_3 : ";
    for (iter = v_3.begin(); iter != v_3.end(); iter++) {
        cout << *iter;
    }
    cout << endl << endl;
 
    cout << "v_1 size : " << v_1.size() << endl;
    cout << "v_2 size : " << v_2.size() << endl;
    cout << "v_3 size : " << v_3.size() << endl;
    // 벡터의 사이즈 출력
 
    cout << endl << endl;
 
    cout << "v_1 capacity : " << v_1.capacity() << endl;
    cout << "v_2 capacity : " << v_2.capacity() << endl
    cout << "v_3 capacity : " << v_3.capacity() << endl;
    // 할당된 공간의 크기 리턴
    return 0;
}
 
cs

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading