1. 程式人生 > 實用技巧 >16.3.2 可對向量(vector)執行的操作

16.3.2 可對向量(vector)執行的操作

// 1.返回容器中元素的數目
size()
// 2.交換兩個容器的內容
swap()
// 3.返回一個指向容器中第一個元素的迭代器
begin()
// 4.返回一個表示超過容器尾的迭代器(超尾迭代器)
end()

——以上是所有STL容器都具有的基本方法。

### 使用迭代器

### 迭代器是一個廣義指標,可對其執行類似指標的操作(指標也是一種迭代器)。

### 可以通過將指標廣義化為迭代器,讓STL能夠為各種不同的容器類提供統一的介面。

### 迭代器的型別是一個名為iterator的typedef,其作用域為整個類。

vector<double>::iterator pd;    //
pd is an iterator
vector<double>::iterator pd = scores.begin()
auto pd = scores.begin()    // 應用C++11自動型別推斷auto來簡化

vector包含一些只有某些STL容器才有的方法

// 1.將元素新增到末尾
push_back(argument)
// 2.刪除給定區間的元素
erase(argument1, argument2)    // 包含argument1的位置但不包含argument2指定的位置
// 3.在指定位置插入元素
insert(argument1, argument2, argument3)    //
argument1指定插入位置,argument2和argument3指定了要插入的元素區間