在stl學習(一)中說了stl的大致組成部件,在了解了stl的組成之後,可以知道容器是stl最根本的東西,沒有容器,迭代器和演算法都無用武之地。所以,從本章開始,我將細細的說說我這段時間學到的stl的知識,本章,我就說說我最先認識的第乙個容器——array。
array方法及作用列表:
array方法 方法
作用fill
使用某個值填充陣列。
swap
交換兩個等大的陣列的內容。
begin
兩個版本(const和非const),返回指向陣列起始位置的迭代器。
end兩個版本(const和非const),返回指向陣列終止位置的迭代器。
rbegin
兩個版本(const和非const),返回指向陣列反向起始位置的迭代器。
rend
兩個版本(const和非const),返回指向陣列反向終止位置的迭代器。
cbegin
返回指向陣列起始位置的常量迭代器,不能通過該迭代器修改資料,與begin的常量版本採用相同的實現。
cend
返回指向陣列終止位置的常量迭代器,不能通過該迭代器修改資料,與end的常量版本採用相同的實現。
crbegin
返回指向陣列反向起始位置的常量迭代器,不能通過該迭代器修改資料,與rbegin的常量版本採用相同的實現。
crend
返回指向陣列反向終止位置的常量迭代器,不能通過該迭代器修改資料,與rend的常量版本採用相同的實現。
size
返回陣列的大小。
max_size
返回陣列的大小。
empty
返回該陣列是否為空,空,返回true,否則,返回false。
兩個版本(const和非const),過載運算子,獲取對應下標的元素。
at兩個版本(const和非const),獲取對應下標的元素,只不過該方法比多做了檢查陣列下標是否越界的操作。
front
兩個版本(const和非const),返回第乙個元素。
back
兩個版本(const和非const),返回最後乙個元素。
data
兩個版本(const和非const),返回陣列的第乙個元素的位址。
例子:#include #include #include using namespace std;
void printelement(string tip,arrayarr)
{ coutarrayarr2;
//fill
arr1.fill(1);
arr2.fill(2);
const arrayarr3=arr2;
printelement("arr1:(fill)",arr1);
printelement("arr2:(fill)",arr2);
printelement("arr3:",arr3);
//swap
arr1.swap(arr2);
printelement("arr1:(swap)",arr1);
printelement("arr2:(swap)",arr2);
//begin,end
cout<<"begin,end:"《執行結果:
arr1:(fill)
1 1 1 1 1
arr2:(fill)
2 2 2 2 2
arr3:
2 2 2 2 2
arr1:(swap)
2 2 2 2 2
arr2:(swap)
1 1 1 1 1
begin,end:
arr1:
2 2 2 2 2
在迴圈中修改迭代器的值後:
arr1:
3 3 3 3 3
常量型別的迭代器不能用來修改值
arr1的大小:5
arr1的max_size:5
arr1是否為空陣列:0
獲取arr1第1個元素的值:3
獲取arr1最後乙個元素的值(第5個):3
修改arr1第1個元素的值:4
修改arr1最後乙個元素的值(第5個):4
獲取arr1第乙個元素的值:4
獲取arr1最後乙個元素的值:4
修改arr1第乙個元素的值:5
修改arr1最後乙個元素的值:5
data的使用:
5 3 3 3 5
C 中的STL序列容器array
今天來講一下stl中的array這個陣列容器的簡單使用。array 陣列容器 是乙個長度固定的序列,有 n 個 t 型別的物件,不能增加或刪除元素。array模板定義了一種相當於標準陣列的容器型別。它是乙個有 n 個 t 型別元素的固定序列。除了需要指定元素的型別和個數之外,它和常規陣列沒有太大的差...
陣列Array的使用
陣列 定義方式 空陣列的定義方式 var attr new array var attr var attr new array 3 有值陣列的定義 var attr new array 張三 李四 王五 var attr 張三 李四 王五 陣列的遍歷 1.for遍歷 for var i 0 i at...
STL學習 二 vector容器
這一篇講的是vector vector類稱作向量類,它實現了動態陣列,用於元素數量變化的物件陣列。vector類也從0開始的下標表示元素的位置,與陣列不同的是vector物件建立後,陣列的元素個數會隨著vector物件元素個數的增大和縮小而自動變化 stl容器裡面的函式集合一般都有共性,也就是說這個...