面向對象三大特性:封裝、繼承、多態
封裝:復用性高的模塊抽象出來,進行整理,作為一個整體,提高了代碼的復用性
繼承:子類繼承父類,把父類中所有的屬性和行為都獲得,不用再次聲明,也提高了代碼的復用
多態:一個函數名稱有多個接口,由于對象不同,父類指針指向子類對象,對象創建的不同,調用一個接口獲得的內容不同,會產生不同的形態
STL 即標準模板庫,從廣義上分為:容器(container) 算法(algorithm) 迭代(iterator)
容器和算法之間通過迭代器進行無縫連接
STL 六大組件
容器、算法、迭代器、仿函數、適配器(配接器)、空間配置器
1、容器:各種數據結構,如vector、list、deque、set、map等,用來存放數據
2、算法:各種常用算法,如sort、find、copy、for_each等
3、迭代器:扮演容器與算法之間的膠合劑
4、仿函數:行為類似函數,可作為算法的某種策略
5、適配器:用來修飾容器或者仿函數或迭代器接口的東西
6、空間配置器:負責空間的配置與管理
一、容器
分為序列式容器和關聯式容器
序列式容器:強調值的排序,其中每個元素都有其固定的位置
關聯式容器:二叉樹結構,各元素間沒有嚴格物理意義上的順序關系
二、算法
算法分為質變算法與非質變算法
質變算法:運算過程中會更改區間內元素內容。如:拷貝,替換,刪除等
非質變算法:運算過程中不改變區間內元素內容。如:查找、遍歷、尋找極值等
三、迭代器
提供一種方法,使之能夠依序尋訪某個容器所含的各個元素,而又不會暴露該容器的內部表達方式
每個容器都有自己的專屬迭代器。
迭代器種類:
1.輸入迭代器2.輸出迭代器3.前向迭代器4.雙向迭代器5.隨機訪問迭代器
常用4、5
四、仿函數
仿函數(Functor)又稱為函數對象(Function Object)是一個能行使函數功能的類。
通過重載括號運算符實現
浙公網安備 33010602011771號