Книга: Standard Template Library Programmer
Pair Associative Container
Разделы на этой странице:
Pair Associative Container
Category: containers
Component type: concept
Description
A Pair Associative Container is an Associative Container that associates a key with some other object. The value type of a Pair Associative Container is pair<const key_type, data_type>. [1]
Refinement of
Associative Container
Associated types
One new type is introduced, in addition to the types defined in the Associative Container requirements. Additionally, Pair Associative Container introduces one new type restriction
Key type | X::key_type |
The type of the key associated with X::value_type. |
Data type | X::data_type |
The type of the data associated with X::value_type. A Pair Associative Container can be thought of as a mapping from key_type to data_type. |
Value type | X::value_type |
The type of object stored in the container. The value type is required to be pair<const key_type, data_type>. |
Notation
X
A type that is a model of Pair Associative Container
a
Object of type X
t
Object of type X::value_type
d
Object of type X::data_type
k
Object of type X::key_type
p, q
Object of type X::iterator
Valid expressions
None, except for those defined in the Associative Container requirements.
Models
• map
• multimap
• hash_map
• hash_multimap
Notes
[1] The value type must be pair<const key_type, data_type>, rather than pair<key_type, data_type>, because of the Associative Container invariant of key immutability. The data_type part of an object in a Pair Associative Container may be modified, but the key_type part may not be. Note the implication of this fact: a Pair Associative Container cannot provide mutable iterators (as defined in the Trivial Iterator requirements), because the value type of a mutable iterator must be Assignable, and pair<const key_type, data_type> is not Assignable. However, a Pair Associative Container can provide iterators that are not completely constant: iterators such that the expression (*i).second = d is valid.
See also
Associative Container, Simple Associative Container
- Associative Container
- Simple Associative Container
- Pair Associative Container
- Sorted Associative Container
- Hashed Associative Container
- Hash Function
- Unique Associative Container
- Multiple Associative Container
- Unique Sorted Associative Container
- Multiple Sorted Associative Container
- Unique Hashed Associative Container
- Multiple Hashed Associative Container
- Multiple Associative Container
- Associative Container
- Associative Containers
- Simple Associative Container
- Sorted Associative Container
- Hashed Associative Container
- Unique Associative Container
- Multiple Sorted Associative Container
- Unique Hashed Associative Container
- Resynchronizing and repairing a mirrored set
- Repairing a mirrored system volume to enable boot
- Repairing a striped set without parity