欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C語言

當前位置:主頁 > 軟件編程 > C語言 >

C++ 頭文件系列(set)詳解

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊: 次

簡介

頭文件包含 set 、 multiset 兩個類模版,這里要描述的概念與map非常相似,甚至連成員函數(shù)都幾乎一樣,所以這篇隨筆會很短。

set

set如果翻譯成中文應該是集合的意思,這里更確切的說是 唯一有序集合 ,性質與map類似:

  1. 關聯(lián)性
  2. 元素唯一性
  3. 動態(tài)增長
  4. 有序性

此外的一個重要特點是:

Key與Value是同一個對象(自映射)

set == map

定義使用set的時候只需要傳入一個類型參數(shù),這個類型即是key,也是value。 實際上, set是map的特殊情況 ,雖然set沒有鍵值對這種元素形式,但set的key本身就是value,map上鍵值對得映射在這里可以看作是元素本身到本身的映射。 所以說, 兩者在實現(xiàn)上應該是有非常大的重合的 。 而從概念上來說,set完全可以由map來實現(xiàn),從而成為一個容器適配器。 但沒有那么做的原因,我想最大程度上是為了節(jié)約內存吧,value值的保存完全是沒有必要的。

實現(xiàn)

通過查看VS 2013版本的C++頭文件可以發(fā)現(xiàn),set和map都是直接共有繼承的_Tree類(紅黑樹),沒有任何其他私有成員。 編碼上的可重用性,佐證了上述想法。

與map不同之處

要說有什么不同,那就是set不提供元素修改的功能----沒有operator[]、at函數(shù)。

一旦元素被插入集合,只能被刪除,不能被重新賦值。 可能對于集合這個概念來說,修改元素的動作太不常見了,所以標準庫索性就去掉了這個功能。

multiset

與multimap類似,這個類模版相當于是支持多個鍵值的set版本。

上一篇:C++ 遍歷目錄下文件簡單實現(xiàn)實例

欄    目:C語言

下一篇:Python HTTP服務搭建顯示本地文件

本文標題:C++ 頭文件系列(set)詳解

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/1771.html

網(wǎng)頁制作CMS教程網(wǎng)絡編程軟件編程腳本語言數(shù)據(jù)庫服務器

如果侵犯了您的權利,請與我們聯(lián)系,我們將在24小時內進行處理、任何非本站因素導致的法律后果,本站均不負任何責任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權所有