1. 程式人生 > >【C++】向量(vector) 基本使用方法及注意事項

【C++】向量(vector) 基本使用方法及注意事項

介紹:

向量(Vector)是一個封裝了動態大小陣列的順序容器(Sequence Container)。跟任意其它型別容器一樣,它能夠存放各種型別的物件。可以簡單的認為,向量是一個能夠存放任意型別的動態陣列。

特點:

1.順序序列
順序容器中的元素按照嚴格的線性順序排序。可以通過元素在序列中的位置訪問對應的元素。
2.動態陣列
支援對序列中的任意元素進行快速直接訪問,甚至可以通過指標算述進行該操作。操供了在序列末尾相對快速地新增/刪除元素的操作。
3.能夠感知記憶體分配器的(Allocator-aware)
容器使用一個記憶體分配器物件來動態地處理它的儲存需求。

常用介面:

  • void push_back(const T& x):向量尾部增加一個元素X
  • void pop_back():刪除向量中最後一個元素
  • void clear():清空向量中所有元素
  • bool empty() const:判斷向量是否為空,若為空,則向量中無元素
  • int size() const:返回向量中元素的個數

注意事項:

對於vector變數應該注意在合適的時候進行clear()操作,否則資料長度會不斷增長,產生不期望的結果。

簡單示例:

#include <iostream>
#include <vector>
#include <math.h>

using namespace std;

int main (int argc, char **argv)
{
    vector<float> V;

    for (int i = 0; i < 1000; i++) {
        V.push_back(sqrt(i));
    }

    for (int i = 0; i < 1000; i++) {
        cout << V[i] << " ";
        if (i % 10 == 0) {
            cout << endl;
        }
    }
    V.clear();

    return  (0);
}