基本概念:
- concept: concept是泛型編程的核心理念,它用來描述一群彼此相關的對象類型也殖。
- type:type可以理解為是concept的實例傲茄,一個concept可以對應多種type
concept和type的例子:
Integral:int8_t,uint8_t,int16_t......
UnsignedIntegral:uint8_t,uint16_t.......
一個概念(concept)是一個用來判斷類型是否滿足這些要求的謂詞。主要設計三個方面:1.類型必須提供那些操作 2. 這些操作的語義 3.這些操作的時間/空間復雜度
3 類型函數與類型屬性
4 Regular(常規(guī)類型):一種concept曹步,它的類型滿足以下操作:
- 拷貝函數
- 賦值
- 等價測試
- 析構
迭代器(Iterator)
迭代器是一種concept铁孵,用來指示序列中的位置豹储。他可以視為廣義的指針汇竭。迭代器的類型必須滿足:1. 常規(guī)類型所支持的操作 2. 移動到后繼位置的操作 3. 解引用操作祥山。
- 迭代器的種類
- 輸入迭代器
- 前向迭代器
- 雙向迭代器
- 隨機訪問迭代器