[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 編程技術 > C/C++ > 正文
標準C程式庫--標準樣版庫-雙頭佇列樣版
http://home.pchome.com.tw/computer/cpp2000/ (2001-06-01 14:08:00)

過去幾年以來,C++ 程式語言的標準語言定義程序經歷了一個大改變。此標準化程序便是標準資料結構庫的產生,此程式庫通常稱為「標準樣版庫」( Standard Template Library ) 或 STL 。由於 STL 是 C++ 語言定義的一部份,因此使用 STL 的程式應該享有高度可植性,因為任何標榜支援 " 標準C++" 的編譯程式都必須提供 STL 實作。

疊代字只是一種類似指標的物件,可以用來循環存取容器中的所有元素。由於不同的演算法需要以個種不同的方式來遊歷容器,因此有各種不同的疊代子形式。標準樣版庫中的每個容器類都提供一種疊代子,適合和實作容器所用的儲存技巧配合使用。

雙頭佇列是兼具向量與串列資料型態特性的資料結構。和向量一樣,雙頭佇列也是隨機存取及索引資料型態。和串列一樣,我們也可以很有效率地將元素插入雙頭佇列的前端或尾端。因此,雙頭佇列可以應用在適合堆疊或佇列的情況。要使用 ( deque ) 資料型態,程式設計師首先必須引入 : #include 

宣告和初始化向量
就如同陣列一般,向量的宣告需加入資料型別,我們也利用一些技巧來宣告二維向量。

deque<資料型別> 名稱(建構字參數);

deque arr_float(20)    // 20 為長度

deque arr_int( 10 , 0)    // 10 為長度,0為初值

Top

向量標
[ ]    重載了[ ] 運算子,使它具有存取向量內其中一個元素。例:s4[2]

at    它和上列那一個功能幾乎一樣,除了它可以丟出一個例外(out_of_range),當指定指大於或等於 size 時。

front    傳回第一個元素。

back    傳回最後一個元素。

Top

長度運算與更改大小的運算
size    傳回一個整數值,指出目前元素的個數。

capacity    傳回緩區的大小。

max_size    可配置元素最大圍。

reserve    改變緩區的元素的個數。

empty    如果向量大小為 0 ,則傳回 true (無向量的容量是多少)

resize    改變元素的個數,並將初值填上,

Top

插入和刪除
push_back    將一個元素到向量的最後面。

pop_back    取得最後一個元素值。

push_front    將一個元素到向量的最前面。

pop_front    取得第一個元素值。

insert    將新元素插入疊代子之後。

erase    移除單一元素或移除一個圍。

Top

向量疊代子
begin    傳回一個指向起點的疊代子。

end    傳回一個指向終點的疊代子。

rbegin    傳回一個指向反轉起點的疊代子。

rend    傳回一個指向反轉終點的疊代子。

(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章
標準C程式庫--問題例--類型 String (2001-06-01 16:10:00)
標準C程式庫--標準樣版庫-集合樣版 (2001-06-01 15:00:01)
標準C程式庫--標準樣版庫-雙頭佇列樣版 (2001-06-01 14:08:00)
標準C程式庫--標準樣版庫-串列樣版 (2001-06-01 13:04:00)
標準C程式庫--標準樣版庫-向量樣版 (2001-06-01 12:10:01)
標準C程式庫--標準樣版庫-字串樣版 (2001-06-01 11:00:00)
 

★  樊強制作 歡迎分享  ★