STL學習(二) array的使用

2021-09-25 09:12:51 字數 2318 閱讀 8841

在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容器裡面的函式集合一般都有共性,也就是說這個...