喜歡這篇文章嗎?喜歡的話去看博主的置頂博客,即可依據分類找到此文章的原版得到更好的體驗,
圖片及代碼顯示的問題,筆者深感抱歉,想要更好的體驗去原博文即可。
title: STL源碼分析3-序列式容器
mathjax: true
date: 2020-03-24 20:39:33
categories: [c++筆記,STL源碼分析]
tags: [c++筆記,STL源碼分析]
keywords: [c++筆記,STL源碼分析]
vector
不講了,太簡單了
vector 的迭代器
服了,居然就是指針,我一直以爲他封裝了一下,這也太懶了。
list
算了這都跳過算了,沒啥意思,
deque
用分段連續來製造整體連續的假象。
兩個迭代器維護首尾,一個二維指針維護一個二維數組,感覺很low,每一行被稱爲一個緩衝區,但是列的話,他前後都預留了一些指針位置。
當我們隨機訪問的時候,就可以根據每一行的長度來選擇正確的緩衝區了。
deque的迭代器
這個就厲害一些了,他包含了4個地方,當前指針、當前緩衝區首尾指針,中控器上面當前緩衝區的指針。
代碼我感覺也一般般,我寫也這樣
queue和stack
居然是deque實現的,明明有更好的實現方法,再見,看都不想看
heap
算法都是這樣寫的
priority heap
vector實現的,
slist
我還是不適合這個東西