色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C++之STL庫中的容器

汽車電子技術 ? 來源:嵌入式情報局 ? 作者:情報小哥 ? 2023-02-21 10:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、容器

前面跟大家介紹過STL庫,STL主要是由6大部分組成,其中第一個提到的就是容器,容器在介紹STL中小哥有簡單的跟大家介紹過,今天稍微再詳細介紹一下。

首先需要看看STL中常用的一些容器及分類:

圖片

所謂容器表面上的意思就是用于容納數據,存儲數據的對象。

從上圖可以看出,基礎的容器根據其所存儲數據的形式分為順序容器和關聯容器。

順序容器當然就是數據成員順序存儲的形式,是一種線性結構,每個數據成員都有固定的位置,所以成員都是按位置來進行存儲,類似于C語言中的數組形式。

關聯容器是一種非線性結構,沒有嚴格的順序,主要是按數值來進行存儲,通常通過迭代器進行訪問,迭代器目前可以簡單理解為"指針"。

2、順序容器

順序容器主要是三種:vector、list和deque

vector向量,其操作方式類似于動態數組,并且可以像數組一樣直接進行訪問,且通常只在后端進行添加與刪除數據,中間插入效率太低,如果vector向量空間不夠,其會動態進行創建。

list雙向鏈表,該鏈表與我們平常的鏈表數據結構類似,其索引性能較差,不能進行隨機數據訪問,不像vector可以直接進行數據訪問,而是需要從頭不斷的進行遍歷,但是雙向鏈表list的優點在于可以輕松的向鏈表容器中插入數據。

deque雙端隊列屬于vector與list的折中版本,支持這兩者的大部分操作,不過其性能上都沒有其他兩種基本容器好。

圖片

3、關聯容器

關聯容器主要有四種:map、set、multimap和multiset。

這些關聯容器都是基于平衡二叉樹來實現的,所以其也是一種鏈式存儲方式,不過相比順序存儲從一條線上擴展到了一個面。

當需要在中間插入元素的時候,對于vector是最慢的,list當然是最快的,而對于關聯容器采用二叉樹結構,中間插入元素所要改變的關系相比vector要少很多,但比list要多一些。

而對于數據元素的檢索,vector無疑是最快的,list當然是最慢的,但對于關聯容器其檢索效果雖然比不過vector,但由于二叉樹的結構查找速度比list要快很多,所以這也就是set容器的優勢。

而對于map采用一種key與value的映射關系,相比vector用數字下標進行索引,map能夠提供一種用字符來索引的功能,這也就是他的特點,當然也可以理解set是一種key與value相等的map。

而對于mulitset與multimap僅僅只是在set和map容器的元素唯一性上進行了可以不唯一的擴展。

4、容器適配器

首先容器適配器并不是容器,而是通過封裝或限制容器的接口構造一些有特殊用途的適配器結構。

STL中主要包含三種適配器:

stack---棧,先進后出

queue--隊列,先進先出

priority_queue--優先級隊列

相比普通隊列,優先級隊列在插入時會根據關鍵詞自動排序,出隊列會按照排列順序優先出隊列。

這些容器適配器也可以通過選擇不同的基礎容器來實現,一般情況下會選擇默認容器來進行適配,當然也可以進行手動修改,但不是每種適配器都可以由任意基礎容器來進行實現,畢竟每種基礎容器存在一些功能上的限制。

最 后

好了,這里小哥就簡單介紹了STL中的容器和容器適配器的整體介紹,后面會對每個容器舉例介紹,本系列文章后續還會更新,記得關注學習哦。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 容器
    +關注

    關注

    0

    文章

    509

    瀏覽量

    22410
  • STL
    STL
    +關注

    關注

    0

    文章

    86

    瀏覽量

    18773
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    c語言入門知識STL

    這周終于可以給大家把STL方面的面試題總結出來了,突然發現它里面的細節非常多,只有你想不到的,沒有它沒有的。對于C++程序員來說,STL庫里面的知識也是非常重要的,只要想在技術這條路線上有長遠的發展,那么就一定要掌握它。不管是學
    的頭像 發表于 03-10 09:31 ?1422次閱讀

    C++STL算法(二)

    C++STL算法(二)
    的頭像 發表于 07-18 14:49 ?1671次閱讀
    <b class='flag-5'>C++</b><b class='flag-5'>之</b><b class='flag-5'>STL</b>算法(二)

    c++STL算法(三)

    c++STL算法(三)
    的頭像 發表于 07-18 15:00 ?1953次閱讀
    <b class='flag-5'>c++</b><b class='flag-5'>之</b><b class='flag-5'>STL</b>算法(三)

    C++文件操作

    C++文件操作
    的頭像 發表于 07-21 10:52 ?1367次閱讀
    <b class='flag-5'>C++</b><b class='flag-5'>之</b>文件操作

    C++零基礎教程STL容器stack容器,輕松上手C++STL

    編程語言C++語言
    電子學習
    發布于 :2023年01月14日 11:27:23

    C++零基礎教程STL容器bitset,輕松上手C++STL

    編程語言C++語言
    電子學習
    發布于 :2023年01月14日 11:31:34

    C++零基礎教程STL容器queue容器,輕松上手C++STL

    編程語言C++語言
    電子學習
    發布于 :2023年01月14日 11:41:21

    C++零基礎教程STL容器deque容器,輕松上手C++STL

    編程語言C++語言
    電子學習
    發布于 :2023年01月14日 11:41:55

    C++ STL的概念及舉例

      本篇文章是作者本人使用STL 后的一些看法, 對於想要靠此文章學習STL, 是不可能的. 建議叁后面介紹的一些書入門.   STL的概念   在STL
    發表于 08-30 11:39 ?1478次閱讀

    詳細剖析C++的的3種容器

    容器是隨著面向對象語言的誕生而提出的,容器類在面向對象語言中特別重要,甚至它被認為是早期面向對象語言的基礎。在現在幾乎所有的面向對象的語言中也都伴隨著一個容器集,在C++
    的頭像 發表于 01-09 12:57 ?5150次閱讀
    詳細剖析<b class='flag-5'>C++</b>的的3種<b class='flag-5'>容器</b>

    C++17 STL標準學習教材電子書免費下載

    C++標準模板STL)。這本書中的例子展示了如何充分的利用STL。不過,作為本書的第1章,我們還是需要了解一下那些比較重要的新語言特性。
    發表于 02-28 08:00 ?9次下載
    <b class='flag-5'>C</b>++17 <b class='flag-5'>STL</b>標準<b class='flag-5'>庫</b>學習教材電子書免費下載

    C++ STL基本概念是什么

    STL,英文全稱 standard template library,中文可譯為標準模板或者泛型,其包含有大量的模板類和模板函數,是 C++ 提供的一個基礎模板的集合,用于完成諸如
    的頭像 發表于 02-27 15:56 ?1713次閱讀
    <b class='flag-5'>C++</b> <b class='flag-5'>STL</b>基本概念是什么

    C++學習筆記順序容器

    C++的順序容器是一種用于存儲和管理元素序列的數據結構。它們提供了一組有序的元素,并支持在序列的任意位置插入和刪除元素。C++標準中提供
    的頭像 發表于 05-11 17:05 ?838次閱讀

    C++STL容器的常見容器及基本操作

    一、什么是容器? 所謂容器,就是可以承載,包含元素的一個器件,它是STL六大組件之一,是容器、算法、迭代器中最重要也是最核心的一部分。 二、STL
    的頭像 發表于 11-10 11:23 ?764次閱讀
    <b class='flag-5'>C++</b><b class='flag-5'>中</b><b class='flag-5'>STL</b><b class='flag-5'>容器</b><b class='flag-5'>中</b>的常見<b class='flag-5'>容器</b>及基本操作

    STL內容介紹

    1 什么是STLSTL(Standard Template Library),即標準模板,是一個具有工業強度的,高效的C++程序。它
    的頭像 發表于 11-13 11:32 ?1290次閱讀
    <b class='flag-5'>STL</b>內容介紹
    主站蜘蛛池模板: 黄色三级视频网站 | 甜宠溺H宝贝嗯撞PLAY啊 | 亚洲国产精品无码中文字满 | 俄罗斯大白屁股 | 99久久无码一区人妻A片蜜 | 翁公吮她的花蒂和奶水 | 在线观看精品视频看看播放 | 秋霞网在线伦理影片 | 台湾18成人影院 | 亚洲AV人无码综合在线观看蜜桃 | 青青久久网 | 恋夜影视列表免费安卓手机版 | 香蕉97超级碰碰碰碰碰久 | 四虎亚洲中文字幕永久在线 | 国产精品九九久久精品视 | 俄罗斯美幼| 国产成人精品久久久久婷婷 | 国产偷抇久久精品A片蜜臀A | 久久中文字幕无线观看 | 在线视频a | 伊人影院2019| 中文字幕天堂久久精品 | 在线中文高清资源免费观看 | 第一精品福利导福航 | 亚洲欧美日韩人成 | 美女脱光app| 欧美 亚洲 另类 综合网 | 果冻传媒在线观看进入窗口 | 亚洲中文字幕永久在线 | 亚洲AV无码乱码国产麻豆P | 久久久无码精品无码国产人妻丝瓜 | 亚洲 欧美 另类 中文 在线 | 别停好爽好深好大好舒服视频 | 二色AV天堂在线 | 日本老师xxxxx18 | 欧美性情video sexo视频 | 秋霞特色大片18岁入口 | 不戴套挺进人妻怀孕 | 国内高清在线观看视频 | 欧美日韩精品一区二区三区四区 | 久久久擼擼擼麻豆 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品