STL之set的基本使用

2021-06-25 18:46:16 字數 3972 閱讀 8728

#include#include#include#includeusing namespace std;

/*****************

*set中不允許重複插入,比如說插入兩個一樣的,只插入乙個進去

******************/

/****************************

* 函式語法 :iterator begin()

const_iterator begin() const

* 函式說明 :返回值為const_iterator時,set不可修改;

******************************/

/****************************

* 函式語法 :iterator end()

const_iterator end() const

* 函式說明 :set為空時,結果沒定義

* 函式功能 :測試iterator是否到達尾部

******************************/

/****************************

* 函式語法 :reverse_iterator rbegin()

const_reverse_iterator begin() const

* 函式說明 :返回值為const_iterator時,set不可修改;

******************************/

/****************************

* 函式語法 :reverse_iterator rend()

const_reverse_iterator end() const

* 函式說明 :set為空時,結果沒定義

* 函式功能 :返回乙個指向反向set的最後元素後面的定位器

******************************/

/****************************

* 函式語法 :void clear()

* 函式功能 :刪除set中所有的元素

******************************/

/****************************

* 函式語法 :bool empty()const

* 函式功能 :判斷set是否為空

* 函式返回值:為空返回true,反之返回false

******************************/

/****************************

* 函式語法 : iterator erase(iterator _where)

iterator erase(iterator _first,iterator _last)

iterator erase(const key_type & _key)

* 函式說明 : _key是要刪除的關鍵字的數值;

_where 刪除元素的位置

_first-_last-1 刪除元素的範圍

* 函式功能 :刪除乙個揮著一定範圍的元素

* 函式返回值:前兩個函式返回指向第乙個沒被刪除的元素的iterator

第三個函式返回被刪除的元素的個數

******************************/

/****************************

* 函式語法 : pairinsert(const value_type& _val)

iterator erase(iterator _where,const value_type& _val)

templatevoid insert(inputiterator _first,inputiterator _last)

* 函式說明 : _val是要插入的關鍵字的數值;

_where 第乙個插入元素的位置

_first-_last-1 插入元素的範圍

* 函式功能 :插入乙個或者一定範圍的元素

* 函式返回值:第乙個函式返回一對值,插入成功bool=true,如果元素已經存在 bool=false,iterator返回插入的位置或者已經存在的元素的位置

第三個函式返回插入位置的定位器

******************************/

/****************************

* 函式語法 :size_type count(const key& _key)const

* 函式說明 :_key是要進行匹配的關鍵字的數值;

* 函式功能 :返回_key的個數

* 函式返回值:返回_key的個數

******************************/

/****************************

* 函式語法 :iterator find(const key& _key)

const_iterator find(const key& _key) const

* 函式功能 :返回第乙個指向關鍵字的定位器

* 函式返回值:返回第乙個指向關鍵字的定位器

******************************/

/****************************

* 函式語法 :size_type size()const

* 函式功能 :計算當前容器的元素個數

* 函式返回值:返回當前容器的長度

******************************/

/****************************

* 函式語法 :void swap(set &_right)

* 函式功能 :交換兩個容器的元素

******************************/

/****************************

* 函式語法 :size_type max_size()const

* 函式功能 :返回容器的最大可能長度

***/

/****************************

* 函式語法 :bool operator!=(

const set&_left,

const set&_right

)bool operator<(

const set&_left,

const set&_right

)同理還有==、<=、>=、>

* 函式功能 :(1)判斷兩個set:_left和_right是否不等

(2)判斷set:_left是否小於_right

* 函式返回值:(1)兩個set不同時返回true,反之返回false

(2)左邊小於時返回true,反之返回false

***/

/****************************

* 函式語法 iterator lower_bound(const key&_key)const

iterator upper_bound(...) 同上,只是大於

* 函式功能 :返回乙個指向第乙個關鍵字的值是大於等於_key的iterator

* 函式返回值:返回乙個指向第乙個關鍵字的值是大於等於_key的iterator~返回第乙個大於等於_key的位置

******************************/

setm_set;

setm_set1;

setm_set2;

void print(setset)

coutcout<::iterator it;

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

return 0;

}

STL的set基本用法

set是集合,雖然也存在鍵值和實值,不過兩者根本就是同乙個值,鍵值的設定完全就是為了滿足紅黑樹的底層結構,set操作與map很像不過也有些不同。1 set迭代器與map的不同 1 set使用接引用運算子 取值,而map使用first和second取值。2 set的迭代器都是常量迭代器,不能用來修改所...

STL之set的用法

1.關於set 首先,set是關聯容器,set作為乙個容器是用來儲存同一種資料型別的資料結構,基本功能與陣列相似。不同的是,在set中每個元素的值都是唯一的。而且系統能夠根據元素的值自動進行排序。但是set中數元素的值並不能直接被改變。除了set,stl中還有一些標準關聯容器multiset map...

STL中set的使用

include include include include include include using namespace std int main double set doubleset a,a size ostream iteratoroutput cout,cout 1 copy dou...