STL原始碼剖析(一)STL簡介

2021-08-17 06:18:06 字數 493 閱讀 4504

最近看了一點《stl原始碼剖析》這本書,覺得寫得很不錯,寫個部落格記錄下。

本篇主要介紹stl的歷史、意義。

stl是c++的乙個標準程式庫,其具有劃時代的意義。因為stl包含了先進的技術和程式設計思想。stl價值在於:

製造臨時物件的方法是,在型別之後加小括號,並可指定初始值,如shape(3,5)等。相當於呼叫相應的建構函式。

如果class成員變數是靜態的、常量的,可以直接在定義的時候賦予初始值。

自增、自減在過載運算子的時候需要注意,是前置自增還是後置自增。

++前置:先自增,返回自增後的

++後置:自增,返回自增前的

迭代器指向的是前閉後開的區間。這種設計方法主要是為了stl的實現方便。

c要傳遞乙個函式,需要傳遞函式指標。

函式指標的缺點:無法持有自己的狀態;無法達到元件的適配性(adaptability)

仿函式(functor):過載operator(),就成為仿函式。使用起來跟函式一樣。

STL原始碼剖析(一)

新開了個坑,侯捷的stl原始碼剖析。其實最開始想看原始碼是因為用string用的不熟悉,不知道裡面有哪些函式,也不知道用了函式裡面儲存層會變成什麼樣。比如對string用 會發生什麼,重新分配記憶體還是用指標指向新開的記憶體,strlen的複雜度到底是不是o n 等等,然後就買了侯捷的這本書,結果到...

STL原始碼剖析

這兩天略讀完了 stl原始碼剖析 之所以是略讀,就是只看大體,不講具現 這個詞在 深度探析c 物件模型 中比較多 已經看過好幾本c 的書了,感覺c 本身設計的博大精深,而c 編譯器就更是乙個神奇的東西,換句話說,你永遠不知道c 編譯器揹著你做了哪些出乎你意料的事 不扯遠了 我主要是想看stl容器的具...

STL原始碼剖析

這兩天略讀完了 stl原始碼剖析 之所以是略讀,就是只看大體,不講具現 這個詞在 深度探析c 物件模型 中比較多 已經看過好幾本c 的書了,感覺c 本身設計的博大精深,而c 編譯器就更是乙個神奇的東西,換句話說,你永遠不知道c 編譯器揹著你做了哪些出乎你意料的事 不扯遠了 我主要是想看stl容器的具...