《STL原始碼剖析學習筆記》

2021-07-01 20:47:34 字數 317 閱讀 2258

1、演算法泛化過程

首先是模板(適應不同型別),其次是迭代器(具有原生指標行為的類),最後是仿函式(行為類似函式指標,但更適合泛化);

泛化的優點(個人總結):1)簡化程式,提高**的可重用性;2)提高了程式的通用性;3)提高了程式的可讀性;4)提高了安全性

函式指標及仿函式:首先說說函式指標,乙個程式可能需要不一樣的操作,函式指標能夠實現操作的重新「賦值」,而不用去修改函式或是修改整個程式,而僅僅是修改函式指標,而仿函式的功能和函式指標類似,但仿函式引入了模板,提高了函式的通用性。

2、配接器:簡單說來就是用於修飾介面進而改變介面

未完待續……

《STL原始碼剖析》學習筆記

第二章 空間配置器 allocator 考慮到小型區塊可能造成的記憶體破碎問題,sgi設計了雙層級配置器。當配置區塊超過128bytes時,便呼叫第一級配置器,即直接使用malloc free sgi的第一級配置器的allocate 和realloc 都是在呼叫malloc 和realloc 不成功...

STL原始碼剖析筆記

在stl中,迭代器使得容器與演算法分離開來,迭代器會定義五種型別。hash table是一種資料結構,和rb tree類似。其中set map multi set multi map都是基於rb tree。在stl中,patial sort 和nth element 不一樣。patial sort是...

STL原始碼剖析學習筆記(一)

本系列文章參考 stl原始碼剖析 以自己的觀點解釋stl,當作自己的學習筆記,如有錯誤請指出,謝謝大家。本系列文章適用於對stl有了解但是還未參透者,先從使用的角度,逐漸滲透到其原理,流程為先介紹各種元件及其聯絡,然後介紹容器 vector,list.的使用,並剖析其主要實現原理,然後介紹迭代器,空...