operator< (<iterator>)

Comprueba si el objeto iterador del lado izquierdo del operador es menor que el objeto iterador del lado derecho.

template<class RandomIterator> 
   bool operator<( 
      const reverse_iterator<RandomIterator>& _Left, 
      const reverse_iterator<RandomIterator>& _Right 
   );

Parámetros

  • _Left
    Un objeto de iteratorescrito.

  • _Right
    Un objeto de iteratorescrito.

Valor devuelto

true si el iterador en el lado izquierdo de la expresión es menor que el iterador en el lado derecho de la expresión; false si es mayor o igual que el iterador a la derecha.

Comentarios

Un objeto de iterador es menor que otro si dirige un elemento que produce anterior en el contenedor del elemento dirigido por otro objeto del iterador. Un objeto de iterador no es menor que otro si dirige el mismo elemento que el otro objeto de iterador o un elemento que produce más adelante en el contenedor del elemento dirigido por otro objeto del iterador.

Ejemplo

// iterator_op_lt.cpp
// compile with: /EHsc
#include <iterator>
#include <vector>
#include <iostream>

int main( )
{
   using namespace std;
   int i;

   vector<int> vec;
   for ( i = 0 ; i < 6 ; ++i )
   {
      vec.push_back ( 2 * i );
   }
   
   vector <int>::iterator vIter;

   cout << "The initial vector vec is: ( ";
   for ( vIter = vec.begin( ) ; vIter != vec.end( ); vIter++)
      cout << *vIter << " ";
   cout << ")." << endl;

   // Initializing reverse_iterators to the last element
   vector <int>::reverse_iterator rVPOS1 = vec.rbegin ( ), 
           rVPOS2 = vec.rbegin ( );
   
   cout << "The iterators rVPOS1& rVPOS2 initially point to the "
           << "first element\n in the reversed sequence: "
           << *rVPOS1 << "." << endl;

   if ( rVPOS1 < rVPOS2 )
      cout << "The iterator rVPOS1 is less than"
              << " the iterator rVPOS2." << endl;
   else
      cout << "The iterator rVPOS1 is not less than"
              << " the iterator rVPOS2." << endl;

   rVPOS2++;
   cout << "The iterator rVPOS2 now points to the second "
           << "element\n in the reversed sequence: "
           << *rVPOS2 << "." << endl;

   if ( rVPOS1 < rVPOS2 )
      cout << "The iterator rVPOS1 is less than"
              << " the iterator rVPOS2." << endl;
   else
      cout << "The iterator rVPOS1 is not less than"
              << " the iterator rVPOS2." << endl;
}
  

Requisitos

Encabezado: <iterator>

Espacio de nombres: std

Vea también

Referencia

Biblioteca de plantillas estándar