STL六大組件

1、容器(containers):STL內(nèi)部封裝好的數(shù)據(jù)結(jié)構(gòu),一種class template,常用的包括vector、list、deque、set、map、multiset、multimap等

2、算法(algorithm):一種function template,常用的有sort、search、copy、erase等

3、迭代器(iterator):泛型指針,是一種智能指針,是一種將operator*,operator->,operator++,operator–等指針相關(guān)操作予以重載的class template。所有STL容器都附帶自己的迭代器

4、配接器(adapter):一種用來修飾容器(container)或仿函數(shù)(functor)或迭代器(iterator)接口的東西。如queue和stack。它們的底部完全借助deque,所有操作都由底層的deque供應。改變functor接口者,稱為functor adapter,改變container接口者,稱為container adapter;改變iterator接口者,稱為iterator adapter。

5、配置器(allocator):負責空間配置與管理。是一個實現(xiàn)了動態(tài)空間配置、空間管理、空間釋放的class template。一般SGI STL為每一個容器都指定其缺省的空間配置器為alloc(SGI配置器)

6、仿函數(shù)(functor):行為類似函數(shù),就是使一個類的使用看上去象一個函數(shù),具有可配接性。它的具體實現(xiàn)就是通過在類中重載了operator(),使這個類具有了類似函數(shù)的行為,就是一個仿函數(shù)類了。一般函數(shù)指針、回調(diào)函數(shù)可視為狹義的仿函數(shù)。以操作數(shù)的個數(shù)劃分,可分為一元和二元仿函數(shù);以功能劃分,可分為算術(shù)運算、關(guān)系運算、邏輯運算三大類。這部分內(nèi)建的仿函數(shù),均放在頭文件里,使用時需引入頭文件

STL內(nèi)建仿函數(shù)分類包括:

1)算術(shù)類仿函數(shù)

加:plus

減:minus

乘:multiplies

除:divides

模?。簃odulus

否定:negate

2)關(guān)系運算類仿函數(shù)

等于:equal_to

不等于:not_equal_to

大于:greater

大于等于:greater_equal

小于:less

小于等于:less_equal

3)邏輯運算仿函數(shù)

邏輯與:logical_and

邏輯或:logical_or

邏輯否:logical_no

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 提到STL,可能很多同學的第一反應就是vector,stack,queue。。。,然而這只是STL一部分而已,ST...
    GThyton閱讀 553評論 0 0
  • 體系結(jié)構(gòu)與內(nèi)核分析第三講 算法 從語言層面講(標準庫六大部件): 容器Container是個class templ...
    hjsadam閱讀 242評論 0 0
  • 1. 容器適配器 順序容器適配器 通用類型 通用操作(初始化+關(guān)系運算)默認基礎(chǔ)容器類型初始化基本初始化方式:空適...
    jdzhangxin閱讀 2,164評論 0 0
  • 很實用的編程英語詞庫,共收錄一千五百余條詞匯。 第一部分: application 應用程式 應用、應用程序app...
    春天的蜜蜂閱讀 1,620評論 0 22
  • 一個玻璃杯子放在桌子邊上,大家都不去理它,就靜靜看著。然后,過不了多久,就被不小心碰到摔壞了。 其實,在桌邊的時候...
    2bafab81304a閱讀 679評論 0 1

友情鏈接更多精彩內(nèi)容