Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

Random Access Iterator

Description

A Random Access Iterator traverses a Sequence moving in either direction, permitting efficient arbitrary distance movements back and forward through the sequence.

Notation

i, j

Random Access Iterators

I, J

Random Access Iterator types

M

An MPL integral constant

N

An integral constant

Refinement of

Bidirectional Iterator

Expression requirements

In addition to the requirements defined in Bidirectional Iterator, the following expressions must be valid:

Expression

Return type

Runtime Complexity

next(i)

Random Access Iterator

Constant

prior(i)

Random Access Iterator

Constant

advance_c<N>(i)

Random Access Iterator

Constant

advance<M>(i)

Random Access Iterator

Constant

Meta Expressions

Expression

Compile Time Complexity

result_of::advance_c<I, N>::type

Amortized constant time

result_of::advance<I, M>::type

Amortized constant time

result_of::distance<I ,J>::type

Amortized constant time

Models

PrevUpHomeNext