C 標準類庫中的list

2021-08-18 03:10:52 字數 1758 閱讀 5279

lists將元素按順序儲存在鍊錶中. 與 向量(vectors)相比, 它允許快速的插入和刪除,但是隨機訪問卻比較慢.

stl中 end()指向的總是無效值,取值都用迭代器,用法跟指標差不多。

assign() 給list賦值 

back() 返回最後乙個元素 

begin() 返回指向第乙個元素的迭代器 

clear() 刪除所有元素 

empty() 如果list是空的則返回true 

end() 返回末尾的迭代器 

erase() 刪除乙個元素 

front() 返回第乙個元素 

get_allocator() 返回list的配置器 

insert() 插入乙個元素到list中 

max_size() 返回list能容納的最大元素數量 

merge() 合併兩個list 

pop_back() 刪除最後乙個元素 

pop_front() 刪除第乙個元素 

push_back() 在list的末尾新增乙個元素 

push_front() 在list的頭部新增乙個元素 

rbegin() 返回指向第乙個元素的逆向迭代器 

remove() 從list刪除元素 

remove_if() 按指定條件刪除元素 

rend() 指向list末尾的逆向迭代器 

resize() 改變list的大小 

reverse() 把list的元素倒轉 

size() 返回list中的元素個數 

sort() 給list排序 

splice() 合併兩個list 

swap() 交換兩個list 

unique() 刪除list中重複的元素

附list用法例項:

#include

#include

#include

#include

using namespace std;

//建立乙個list容器的例項listint

typedef listlistint;

//建立乙個list容器的例項listchar

typedef listlistchar;

void main(void)

bool operator==(example const & rhs)

private:

int i;

};int main(void)

;listint ls1;

ls1.assign(a,a+5);

listint::iterator it;

for( it=ls1.begin(); it!=ls1.end(); it++)

cout<<*it<<" ";

cout

ls1.insert( ls1.end(), 4 );

for( it=ls1.begin(); it!=ls1.end(); it++)

cout<<*it<<" ";

cout

ls1.remove( 5 );

for( it=ls1.begin(); it!=ls1.end(); it++)

cout<<*it<<" ";

cout<}//輸出 1 3 6 4 【5元素全部被刪除了】

/* 輸出如下

5 3 5 6

5 3 5 6 4

3 6 4

*/

c 標準庫中,含有鍊錶的類list

lists將元素按順序儲存在鍊錶中.與 向量 vectors 相比,它允許快速的插入和刪除,但是隨機訪問卻比較慢.stl中 end 指向的總是無效值,取值都用迭代器,用法跟指標差不多。assign 給list賦值 back 返回最後乙個元素 begin 返回指向第乙個元素的迭代器 clear 刪除所...

C 標準庫異常類

c 標準庫異常類繼承層次中的根類為exception,其定義在exception標頭檔案中,它是c 標準庫所有函式丟擲異常的基類,exception的介面定義如下 namespace std 除了exception類,c 還提供了一些類,用於報告程式不正常的情況,在這些預定義的類中反映的錯誤模型中,...

C 標準庫 (string 類)

一 成員函式 二 非成員有關的全域性函式 三 例項 感謝閱讀!其中的string是以char作為模板引數的模板類例項,把字串的記憶體管理責任由string負責而不是由程式設計者負責,大大減輕了c語言風格的字串的麻煩 std basic string提供了大量的字串操作函式,如比較 連線 搜尋 替換 ...