Share via


deque::rbegin and deque::rend

Illustrates how to use the deque::rbegin and deque::rend Standard Template Library (STL) functions in Visual C++.

const_reverse_iterator rbegin( ) const; 
reverse_iterator rbegin( ); 
const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Remarks

Note

The class/parameter names in the prototype do not match the version in the header file. Some have been modified to improve readability.

The rbegin member function returns a reverse iterator that points just beyond the end of the controlled sequence. Therefore, it designates the beginning of the reverse sequence. The rend member function returns a reverse iterator that points at the first element of the sequence, or just beyond the end of an empty sequence. Therefore, it designates the end of the reverse sequence.

Example

// rbegin.cpp
// compile with: /EHsc
// 
// Functions:
//    rbegin
//    rend
//    push_back

#include <iostream>
#include <deque>

using namespace std;

typedef deque<int >  INTDEQUE;

int main()
{

    // Create A and fill it with elements 1,2,3,4 and 5
    // using push_back function

    INTDEQUE  A;
    A.push_back(1);
    A.push_back(2);
    A.push_back(3);
    A.push_back(4);
    A.push_back(5);

    // Now print the contents in reverse order using reverse_iterator
    // and functions rbegin() and rend()

    INTDEQUE::reverse_iterator rpi;
    cout << "Contents in reverse order:";
    for(rpi= A.rbegin(); rpi !=A.rend(); rpi++)
        cout << " " << *rpi;
    cout<<endl;
}

Output

Contents in reverse order: 5 4 3 2 1

Requirements

Header: <deque>

See Also

Concepts

Standard Template Library Samples