Freigeben über


operator< (<stack>)

Tests, wenn das Stapelobjekt auf der linken Seite des Operators kleiner ist, als das Stapelobjekt auf der rechten Seite.

bool operator<(
   const stack <Type, Container>& _Left,
   const stack <Type, Container>& _Right
);

Parameter

  • _Left
    Ein Objekt des Typs stack.

  • _Right
    Ein Objekt des Typs stack.

Rückgabewert

true, wenn der Stapel auf der linken Seite des Operators kleiner als und nicht dem Stapel auf der rechten Seite des Operators befindet; andernfalls false.

Hinweise

Der Vergleich zwischen Stapelobjekten basiert auf einem paarweisen Vergleich ihrer Elemente.Weniger-als Beziehung zwischen zwei Stapelobjekten basiert auf einem Vergleich der ersten Paar der ungleich Elemente.

Beispiel

// stack_op_lt.cpp
// compile with: /EHsc
#include <stack>
#include <list>
#include <iostream>

int main( )
{
   using namespace std;

   // Declares stacks with list base container
   stack <int, list<int> > s1, s2, s3;

   s1.push( 2 );
   s1.push( 4 );
   s1.push( 6 );
   s1.push( 8 );
   s2.push( 5 );
   s2.push( 10 );
   s3.push( 2 );
   s3.push( 4 );
   s3.push( 6 );
   s3.push( 8 );

   if ( s1 >= s2 )
      cout << "The stack s1 is greater than or equal to "
           << "the stack s2." << endl;
   else
      cout << "The stack s1 is less than "
           << "the stack s2." << endl;

   if ( s1>= s3 )
      cout << "The stack s1 is greater than or equal to "
           << "the stack s3." << endl;
   else
      cout << "The stack s1 is less than "
           << "the stack s3." << endl;

   // to print out the stack s1 ( by unstacking the elements):
   stack <int>::size_type i_size_s1 = s1.size( );
   cout << "The stack s1 from the top down is: ( ";
   unsigned int i;
   for ( i = 1 ; i <= i_size_s1 ; i++ )
   {
      cout << s1.top( ) << " ";
      s1.pop( );
   }
   cout << ")." << endl;
}
  
  
  

Anforderungen

Header: <stack>

Namespace: std

Siehe auch

Referenz

Standardvorlagenbibliothek