Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Stellt den zugrunde liegenden Iterator von seinem reverse_iterator wiederher.
RandomIterator base( ) const;
Rückgabewert
Der zugrunde liegende Iterator reverse_iterator.
Hinweise
Die Identität, die alle umgekehrten Iteratoren auf ihre zugrunde liegenden Iteratoren verknüpft, ist:
&* (reverse_iterator (i)) == &* i (- 1).
In der Praxis bedeutet dies, dass dem in umgekehrter Reihenfolge reverse_iterator die Position des Elements eines über (auf der rechten Seite) dem Element hinaus verweist, dass der Iterator in der ursprünglichen Sequenz verwiesen hat.Daher, wenn ein Iterator das Element 6 in der Sequenz adressierte (2, 4, 6, 8), dann, reverse_iterator adressiert das Element 4 in umgekehrter Reihenfolge (8, 6, 4, 2).
Beispiel
// reverse_iterator_base.cpp
// compile with: /EHsc
#include <iterator>
#include <algorithm>
#include <vector>
#include <iostream>
int main( )
{
using namespace std;
int i;
vector<int> vec;
for ( i = 1 ; i < 6 ; ++i )
{
vec.push_back ( 2 * i );
}
vector <int>::iterator vIter;
cout << "The vector vec is: ( ";
for ( vIter = vec.begin ( ) ; vIter != vec.end ( ); vIter++ )
cout << *vIter << " ";
cout << ")." << endl;
vector <int>::reverse_iterator rvIter;
cout << "The vector vec reversed is: ( ";
for ( rvIter = vec.rbegin( ) ; rvIter != vec.rend( ); rvIter++)
cout << *rvIter << " ";
cout << ")." << endl;
vector <int>::iterator pos, bpos;
pos = find ( vec.begin ( ), vec.end ( ), 6 );
cout << "The iterator pos points to: " << *pos << "." << endl;
typedef reverse_iterator<vector<int>::iterator>::iterator_type it_vec_int_type;
reverse_iterator<it_vec_int_type> rpos ( pos );
cout << "The reverse_iterator rpos points to: " << *rpos
<< "." << endl;
bpos = rpos.base ( );
cout << "The iterator underlying rpos is bpos & it points to: "
<< *bpos << "." << endl;
}
Output
The vector vec is: ( 2 4 6 8 10 ).
The vector vec reversed is: ( 10 8 6 4 2 ).
The iterator pos points to: 6.
The reverse_iterator rpos points to: 4.
The iterator underlying rpos is bpos & it points to: 6.
Anforderungen
Header: <iterator>
Namespace: std