The sample code below illustrates how to use the set::max_size
STL function in Visual C++.
Required Header:
<set>
template<class _K, class _Pr, class _A>
class set
{
public:
// Function 1:
size_type max_size() const;
}
Note: The class/parameter names in the prototype do not match the version in the header file. Some have been modified to improve readability.
Description:
The max_size function is used to determine the maximum number of elements the controlled sequence can contain.
Sample Code:
//////////////////////////////////////////////////////////////////////
//
// Compile options needed: -GX
//
// SetMax_size.cpp:
// Illustrates how to use the max_size function to determine how
// many elements the controlled sequence can contain.
//
// Functions:
//
// max_size Returns the maximum number of elements the controlled
// sequence can contain.
//
//////////////////////////////////////////////////////////////////////
#pragma warning(disable:4786)
#include <set>
#include <iostream>
#include <assert.h>
using namespace std ;
typedef set<int> SET_INT;
void main() {
SET_INT s1;
cout << "s1.max_size() returned ";
cout << s1.max_size() << endl; // 1073741823 [value may vary]
for (int x=0;(x<1000 && x<s1.max_size());x++)
assert(s1.insert(x).second);
cout << "s1.size() returned ";
cout << s1.size() << endl; // 1000
}
Program Output is:
s1.max_size() returned 1073741823
s1.size() returned 1000