Article ID: 158201
Article Last Modified on 1/5/2006
<string>
Function 1:
template<class _E, class _TYPE, class _A> inline
bool operator>(const basic_string<_E, _TYPE, _A>& LString,
const _E *RCharArray);
Function 2:
template<class _E, class _TYPE, class _A> inline
bool operator>(const _E *LCharArray,
const basic_string<_E, _TYPE, _A>& RString);
NOTE: The class/parameter names in the prototype may not match the
version in the header file. Some have been modified to improve readability.
//////////////////////////////////////////////////////////////////////
//
// Compile options needed: /GX
//
// StringGreaterThan.cpp : Illustrates how to use the operator> to
// compare a basic_string variable to a
// null-terminated string.
//
// Functions:
//
// operator> Returns true if the second parameter is less than
// the first.
//
// Written by Derek Jamison
// of Microsoft Product Support Services,
// Copyright (c) 1996 Microsoft Corporation. All rights reserved.
//////////////////////////////////////////////////////////////////////
#pragma warning(disable:4786)
#include <string>
#include <iostream>
#if _MSC_VER > 1020 // if VC++ version is > 4.2
using namespace std; // std c++ libs implemented in std
#endif
void trueFalse(int x)
{
cout << (x? "True": "False") << endl;
}
void main()
{
string S1="ABC";
char CP1[]="ABC";
char CP2[]="DEF";
char CP3[]="ABCD";
char CP4[]="abc";
cout << "S1 is " << S1 << endl;
cout << "CP1 is " << CP1 << endl;
cout << "CP2 is " << CP2 << endl;
cout << "CP3 is " << CP3 << endl;
cout << "CP4 is " << CP4 << endl;
cout << "S1>CP1 returned ";
trueFalse(S1>CP1); // False (calls function 1)
cout << "S1>CP2 returned ";
trueFalse(S1>CP2); // False (calls function 1)
cout << "S1>CP4 returned ";
trueFalse(S1>CP4); // False (calls function 1)
cout << "CP1>S1 returned ";
trueFalse(CP1>S1); // False (calls function 2)
cout << "CP2>S1 returned ";
trueFalse(CP2>S1); // True (calls function 2)
cout << "CP3>S1 returned ";
trueFalse(CP3>S1); // True (calls function 2)
}
Program Output is: S1 is ABC CP1 is ABC CP2 is DEF CP3 is ABCD CP4 is abc S1>CP1 returned False S1>CP2 returned False S1>CP4 returned False CP1>S1 returned False CP2>S1 returned True CP3>S1 returned True
Additional query words: STL STLSample operator string
Keywords: kbhowto kbinfo kbtemplate kbstl kbcode KB158201