operator<= (in <string>)
Sprawdza, czy ciąg obiektu po lewej stronie operatora jest mniejsza niż lub równa obiektu ciąg po prawej stronie.
template<class CharType, class Traits, class Allocator>
bool operator<=(
const basic_string<CharType, Traits, Allocator>& _Left,
const basic_string<CharType, Traits, Allocator>& _Right
);
template<class CharType, class Traits, class Allocator>
bool operator<=(
const basic_string<CharType, Traits, Allocator>& _Left,
const CharType *_Right
);
template<class CharType, class Traits, class Allocator>
bool operator<=(
const CharType *_Left,
const basic_string<CharType, Traits, Allocator>& _Right
);
Parametry
_Left
Ciąg stylu C lub obiektu typu basic_string ma być porównywana._Right
Ciąg stylu C lub obiektu typu basic_string ma być porównywana.
Wartość zwracana
TRUE Jeśli obiekt string po lewej stronie operatora leksykograficznym jest mniejsza lub równa obiekt string po prawej stronie; w przeciwnym razie false.
Uwagi
Lexicographical porównania ciągów porównuje je znak po znaku, aż do:
Znajduje dwa odpowiadające im znaki w porównaniach traktowane jako różne i w wyniku porównania ciągów są uzyskiwane wyniki ich porównania.
Znalezione nie nierówności, ale jeden ciąg zawiera więcej znaków niż inne i krótszego ciągu jest uważany za mniej niż dłuższy ciąg.
Znalezione nie nierówności i stwierdza, że ciągi ma tę samą liczbę znaków, więc ciągi są równe.
Przykład
// string_op_le.cpp
// compile with: /EHsc
#include <string>
#include <iostream>
int main( )
{
using namespace std;
// Declaring an objects of type basic_string<char>
string s1 ( "strict" );
string s2 ( "strum" );
cout << "The basic_string s1 = " << s1 << "." << endl;
cout << "The basic_string s2 = " << s2 << "." << endl;
// Declaring a C-style string
char *s3 = "strict";
cout << "The C-style string s3 = " << s3 << "." << endl;
// First member function: comparison between left-side object
// of type basic_string & right-side object of type basic_string
if ( s1 <= s2 )
cout << "The string s1 is less than or equal to "
<< "the string s2." << endl;
else
cout << "The string s1 is greater than "
<< "the string s2." << endl;
// Second member function: comparison between left-side object
// of type basic_string & right-side object of C-syle string type
if ( s1 <= s3 )
cout << "The string s1 is less than or equal to "
<< "the string s3." << endl;
else
cout << "The string s1 is greater than "
<< "the string s3." << endl;
// Third member function: comparison between left-side object
// of C-syle string type & right-side object of type basic_string
if ( s2 <= s3 )
cout << "The string s2 is less than or equal to "
<< "the string s3." << endl;
else
cout << "The string s2 is greater than "
<< "the string s3." << endl;
}
Wymagania
Nagłówek: <ciąg>
Przestrzeń nazw: std