键值关联容器
|
|
类别:容器 |
组件类型:概念 |
描述
键值关联容器是一种关联容器,它将键与其他一些对象关联在一起。键值关联容器的值类型是:pair<const key_type, data_type>. [1]
改进
关联容器
相关类型
除了在关联容器需求中定义的类型外,还引入一个新类型。此外,键值关联容器还引入了一个新的类型限制:
键类型 |
X::key_type
|
与X::value_type.
|
相关联的键的类型 |
数据类型
|
X::data_typeX::value_type与相关联的数据类型. 键值关联容器可以被视为是key_type.
|
到 |
X::value_type
|
data_typepair<const key_type, data_type>.
|
的一个映射
值类型
|
存储在容器中的对象类型。值类型要求是: |
符号
|
X值类型
|
键值关联容器模型类型
|
XX::value_type
|
a
|
X数据类型
|
类型对象
|
XX::key_type
|
t, d
|
Xk
|
p
q
X::iterator定义
有效表达式
无,除了在关联容器需求中定义的那些之外。
表达式语义
multimap
hash_mappair<const key_type, data_type>hash_multimap注释[1]值类型必须是:key_type, 而不是相关联的数据类型pair<key_type, data_type>pair<const key_type, data_type>,因为关联容器的关键不可变性不变量。键值关联容器中的对象部分可能被修改,但部分可能不会。请注意此事实的含义:键值关联容器无法提供可变迭代器(如在平凡迭代器需求中定义的那样),因为可变迭代器的值类型必须是可分配的,而
不是可分配的。然而,键值关联容器可以提供不完全常量的迭代器:例如这样的迭代器:
(*i).second = d
是有效的。
另请参阅