STL Sample for the set::(key_, value_)comp FunctionLast reviewed: October 9, 1997Article ID: Q158573 |
The information in this article applies to:
SUMMARYThe following sample code illustrates how to use the set::key_comp and set::value_comp STL functions in Visual C++.
MORE INFORMATION
Required Header
<set> Prototype
template<class _K, class _Pr, class _A> class set { public: // Function 1: key_compare key_comp() const; // Function 2: value_compare value_comp() const; }NOTE: The class/parameter names in the prototype may not match the version in the header file. Some have been modified to improve readability.
DescriptionThe key_comp function returns the stored function object that determines the order of elements in the controlled sequence. The value_comp function returns the same function that key_comp returns.
Sample Code
////////////////////////////////////////////////////////////////////// // // Compile options needed: -GX // // SetComp.cpp: // Illustrates how to use the key_comp function to obtain a // function pointer that is the stored function object that // determines the order of elements in the controlled sequence. // It also illustrates how to use the value_comp function to // obtain a function pointer that is the stored function object // that determines the order of the elements in the controlled // sequence (same as key_comp result). // // Functions: // // key_comp Returns a function pointer to the function that // determines the order of elements in the controlled // sequence. // value_comp Returns a function pointer to the function that // determines the order of elements in the controlled // sequence (same as key_comp). // // Written by Derek Jamison // of Microsoft Technical Support, // Copyright (c) 1996 Microsoft Corporation. All rights reserved. //////////////////////////////////////////////////////////////////////#pragma warning(disable:4786) #include <set> #include <iostream>typedef set<int,less<int>,allocator<int> > SET_INT;
void truefalse(int x){ cout << (x?"True":"False") << endl;}
void main() { SET_INT s1; cout << "s1.key_comp()(8,10) returned "; truefalse(s1.key_comp()(8,10)); // True cout << "s1.value_comp()(8,10) returned "; truefalse(s1.value_comp()(8,10)); // True cout << "s1.key_comp()(10,8) returned "; truefalse(s1.key_comp()(10,8)); // False cout << "s1.value_comp()(10,8) returned "; truefalse(s1.value_comp()(10,8)); // False cout << "s1.key_comp()(8,8) returned "; truefalse(s1.key_comp()(8,8)); // False cout << "s1.value_comp()(8,8) returned "; truefalse(s1.value_comp()(8,8)); // False } Program Outputs1.key_comp()(8,10) returned True s1.value_comp()(8,10) returned True s1.key_comp()(10,8) returned False s1.value_comp()(10,8) returned False s1.key_comp()(8,8) returned False s1.value_comp()(8,8) returned False
REFERENCESVisual C++ Books Online: Visual C++ Books; C/C++; Standard C++ Library Reference
|
Additional query words: STL STLSample value_comp key_comp
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |