STL簡介-創(chuàng)新互聯

STL主要包含了容器、迭代器、算法和string四部分。

創(chuàng)新互聯從2013年開始,是專業(yè)互聯網技術服務公司,擁有項目成都做網站、網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元開化做網站,已為上家服務,為開化各地企業(yè)和個人服務,聯系電話:18980820575
標準庫算法對迭代器而不是容器進行操作。因此,算法不能(直接)添加或刪除元素。
一、容器 容器為存儲和管理數據對象的集合,包含了三種容器:

1.線性容器:該類容器的邏輯結構為線性結構??梢酝ㄟ^下標訪問元素的容器稱為隨機容器,其特點是容器中的元素在內存中是連續(xù)存放的,容器的存儲結構為順序存儲結構。vector和deque為隨機容器。

2.適配器容器:以線性容器作為底層容器,且對線性容器的通用接口加以限制。默認的底層容器為雙端隊列。只要滿足上層容器對接口的要求,也可以用自己定義的容器類型作為適配器容器的底層容器。

3.關聯容器:其存儲結構為平衡樹,基于紅黑樹實現。

容器的創(chuàng)建 :
//模板類創(chuàng)建
vectora; //定義了一個vector類型的變量,其中元素為整型

//用戶自定義類型的容器變量
struct node{
    int key;
    int data;
};  
vectorb;

注意:用戶自定義的類型不適用于容器priority_queue、map、multimap、set、multiset
的類型參數,因為這類容器需要根據元素值的大小來決定存放位置。因此,創(chuàng)建這類容器時,
需定義元素之間的比較準則,確保元素之間可以進行比較。
因此,若用戶自定義類型為整形、字符型等基本數據類型,也適用于以上容器;
若容器元素類型為用戶自定義類型,則必須指定自定義類型變量之間的比較方法。

//第一種方法:基于運算符的比較方法
//包含小于運算符重載的類型定義
struct node{
    int key;
    int data;
    bool operator<(const node &n1)const{
        return keyse;

//第二種方法:基于比較器的比較方法
//即定義對函數調用進行重載的結構,并在創(chuàng)建對象時將該結構名作為參數
struct cmp{
    bool oprator()(node n1,node n2){
        return n1.keyse;
容器的基本操作:?
size()
empty()
insert()
erase()
clear()
begin()
end()
pair類型:

pair類型的變量將一對值組合成一個整體(相當于一個含有兩個元素的結構),這一對值可以具有不同的數據類型,可以用pair的;兩個公有屬性first和second訪問這兩個值。

pairp(1,"hahaha");         //在定義時初始化
p=make_pair(2,"abc");                  //改變pair變量的值
cout<>vp;               //pair作為其他容器的類型參數
vp.push_back(make_pair(2,4));
cout<

二、迭代器?

迭代器可以訪問容器(適配器容器除外)的元素,迭代器和容器的關系類似于指針和數組的關系。迭代器和指針之間的一個重要區(qū)別就是不存在NULL的迭代器。

//迭代器的定義方式:
//容器類型::iterator it
vector::iterator it;

//向前/后移動
it--; 
it++;

//隨機迭代器如vector和deque,可以采用加上或減去一個整數的方式向后/向前移動
it = it+2;

//非隨機容器的迭代器只能采用“++”或“--”移動

//舉例:遍歷容器所有元素
for(vector::iterator it=a.begin();it!=a.end();it++)
        cout<<*it<

三、算法? string用法
//頭文件
#include//初始化
string s1;
string s2("hello world!");
string s3="hello china!";

//賦值與比較
if(s2>s3) cout<

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

當前文章:STL簡介-創(chuàng)新互聯
文章地址:http://muchs.cn/article20/cdscjo.html

成都網站建設公司_創(chuàng)新互聯,為您提供小程序開發(fā)、動態(tài)網站網站設計公司、全網營銷推廣、網頁設計公司網站改版

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯