|
ALINK="#ff0000">
Random Access Container
|
|
Category: containers |
Component type: concept |
Description
A Random Access Container is a Reversible Container
whose iterator type is a Random Access Iterator.
It provides amortized constant time access to arbitrary elements.
Refinement of
Reversible Container
Associated types
No additional types beyond those defined in Reversible Container.
However, the requirements for the iterator type are strengthened:
it must be a Random Access Iterator.
Notation
X
|
A type that is a model of Random Access Container
|
a, b
|
Object of type X
|
T
|
The value type of X
|
Definitions
Valid expressions
In addition to the expressions defined in Reversible Container,
the following expressions must be valid.
Name
|
Expression
|
Type requirements
|
Return type
|
Element access
|
a[n]
|
n is convertible to size_type
|
reference if a is mutable, const_reference otherwise
|
Expression semantics
Semantics of an expression is defined only where it is not defined in
Reversible Container, or where there is additional information.
Name
|
Expression
|
Precondition
|
Semantics
|
Postcondition
|
Element access
|
a[n]
|
0 <= n < a.size()
|
Returns the nth element from the beginning of the container.
|
|
Complexity guarantees
The run-time complexity of element access is amortized constant time.
Invariants
Element access
|
The element returned by a[n] is the same as the one obtained by
incrementing a.begin() n times and then dereferencing the resulting
iterator.
|
Models
Notes
See also
The Iterator overview, Random Access Iterator, Sequence
Copyright ©
1999 Silicon Graphics, Inc. All Rights Reserved.
TrademarkInformation
|