前向容器(Forward Container)
容器
類目:容器
描述
前向容器中的元素是按一定的順序排序的:這個順序不會因為迭代而自動改變。一定的順序要求允許定義相等的元素(如果容器中的元素是可以比較相等的Equality Comparable)和字典序(如果容器中的元素類型是可以比較小于的 LessThen Comparable)。
前向容器中的迭代器滿足前向迭代器的要求:因此,前向容器支持多通道算法,并允許同一個容器可以同時擁有多個激活的迭代器。
完善(Refinement of)
Container,EqualityComparable,LessThanComparable
相關類型
除了容器總定義的,沒有其他額外的類型。然而,迭代器類型的要求加強:迭代器類型必須是前向迭代器模式。
標記法
X 是一個前向容器模式的類型
a,b 類型X的對象
T 類型X的值
定義
有效表達式
除了容器中定義的表達式外,EqualityComparable,和LessThanComparable,下面的表達式必須是有效的。
名字 表達式 類型要求 返回類型
等式(Equality) a == b T是EqualityComparable 可轉換成bool
不等式(Inequality) a != b T是EqualityComparable 可轉換成bool
小于(Less) a < b T是LessThanComparable 可轉換成bool
大于(Greater) a > b T是LessThanComparable 可轉換成bool
小于或等于(Less or equal) a <= b T是LessThanComparable 可轉換成bool
大于或等于(Greater or equal)a >= b T是LessThanComparable 可轉換成bool
表達式語義
一個表達式的語義只有在這種情況下定義,當它沒有定義在Container, EqualityComparable, 或者LessThanComparable,或者有額外的信息。
名字 表達式 前提 語義 后置
等式(Equality) a == b 如果a.size() == b.size()而且a中的每個元素都等于b中的對應的元素,那么返回true。否則返回false。
小于(Less) a < b 相當于lexicographical_compare(a,b)
復雜性擔保
等式和不等式的操作與容器的大小呈線性關系。
不變
順序 兩個不同的迭代器迭代一個前向容器的,都是以同樣的順序訪問它的元素,提供一個沒有干預性的操作。
模型
vector
list
slist
deque
set
hash_set
map
hash_map
multiset
hash_multiset
multimap
hash_multimap
注釋
參見
iterator overview, Forward Iterator, Sequence
posted on 2012-03-19 12:10
canaan 閱讀(1215)
評論(0) 編輯 收藏 引用 所屬分類:
外文翻譯