A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.com/reference/iterator/reverse_iterator/operators/ below:

function template

<iterator>

std::relational operators (reverse_iterator) (1)
template <class Iterator>  bool operator== (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(2)
template <class Iterator>  bool operator!= (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(3)
template <class Iterator>  bool operator<  (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(4)
template <class Iterator>  bool operator<= (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(5)
template <class Iterator>  bool operator>  (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(6)
template <class Iterator>  bool operator>= (const reverse_iterator<Iterator>& lhs,                   const reverse_iterator<Iterator>& rhs);
(1)
template <class Iterator1, class Iterator2>  bool operator== (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);
(2)
template <class Iterator1, class Iterator2>  bool operator!= (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);
(3)
template <class Iterator1, class Iterator2>  bool operator<  (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);
(4)
template <class Iterator1, class Iterator2>  bool operator<= (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);
(5)
template <class Iterator1, class Iterator2>  bool operator>  (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);
(6)
template <class Iterator1, class Iterator2>  bool operator>= (const reverse_iterator<Iterator1>& lhs,                   const reverse_iterator<Iterator2>& rhs);

Relational operators for reverse_iterator

Performs the appropriate comparison operation between the reverse_iterator objects lhs and rhs.

Internally, the function compares directly the base iterators using the reflexively equivalent relational operator:

operator on
reverse iterators equivalent used on
base iterators == == != != < > <= >= > < >= <=


These operators are overloaded in header <iterator>.

Parameters
lhs, rhs
reverse_iterator

objects (to the left- and right-hand side of the operator, respectively), having both the same template parameter (

Iterator

).


reverse_iterator

objects (to the left- and right-hand side of the operator, respectively) for whose

base iterators

the proper comparison operation is defined.



Return Valuetrue if the condition holds, and false otherwise.

Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// reverse_iterator example
#include <iostream>     // std::cout
#include <iterator>     // std::reverse_iterator
#include <vector>       // std::vector

int main () {
  std::vector<int> myvector;
  for (int i=0; i<10; i++) myvector.push_back(i);

  typedef std::vector<int>::iterator iter_type;
                                                         // ? 9 8 7 6 5 4 3 2 1 0 ?
  iter_type from (myvector.begin());                     //   ^
                                                         //         ------>
  iter_type until (myvector.end());                      //                       ^
                                                         //
  std::reverse_iterator<iter_type> rev_until (from);     // ^
                                                         //         <------
  std::reverse_iterator<iter_type> rev_from (until);     //                     ^

  std::cout << "myvector:";
  while (rev_from != rev_until)
    std::cout << ' ' << *rev_from++;
  std::cout << '\n';

  return 0;
}

Output:
myvector: 9 8 7 6 5 4 3 2 1 0


Data races Both objects, lhs and rhs, are accessed.

Exception safety Provides the same level of guarantee as the operation applied to the base iterators of lhs and rhs.

See also
reverse_iterator::operator+=
Advance iterator (public member function)
reverse_iterator::operator-=
Retrocede iterator (public member function)

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4