C語言 Vector基礎用法

2020-08-09 17:50:31

1. 初始化以及定義

    Vector型別隸屬於c++的標準模板庫,作用相當於malloc的陣列。

    區別應該在於malloc的陣列儲存在記憶體棧上,而Vector物件儲存在記憶體的堆中。

#include <vector>

using namespace std; // vector屬於std命名域

int main()
{
    /* vector物件的定義 */

    // 1. 定義空的, 型別爲TypeName 的vector型別
    vector<TypeName> vector;
    
    // 2. 定義長度爲num的vector物件,其中值全爲val
    vector<TypeName> vector(num, val);

    // 3. 明確定義vector物件下的各個值
    vector<TypeName> vector{val_1, val_2, val_3, ...};

    return 0;
}

2. 常用方法

方法 描述
vector.at(index) 返回索引index指向的元素
vector.front() 返回容器中第一個元素
vector.back() 返回容器中最後一個元素
vector.capacity() 返回容器的最大容量
vector.size() 返回容器的當前元素個數
vector.push_back() 從容器尾部新增數據
vector.pop_back() 從容器尾部刪除數據
vector.insert(pos,val) 在容器的pos位置新增值爲val的數據
vector.insert(pos,n,val) 在容器的pos位置新增值爲val的n個數據
vector.empty() 判斷容器是否爲空,空則返回true
vector.clear() 清空容器