public member function
<set>

std::set::max_size

size_type max_size() const;
size_type max_size() const noexcept;
Return maximum size
Returns the maximum number of elements that the set container can hold.

This is the maximum potential size the container can reach due to known system or library implementation limitations, but the container is by no means guaranteed to be able to reach that size: it can still fail to allocate storage at any point before that size is reached.

Parameters

none

Return Value

The maximum number of elements a set container can hold as content.

Member type size_type is an unsigned integral type.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// set::max_size
#include <iostream>
#include <set>

int main ()
{
  int i;
  std::set<int> myset;

  if (myset.max_size()>1000)
  {
    for (i=0; i<1000; i++) myset.insert(i);
    std::cout << "The set contains 1000 elements.\n";
  }
  else std::cout << "The set could not hold 1000 elements.\n";

  return 0;
}

Here, member max_size is used to check beforehand whether the set will allow for 1000 elements to be inserted.

Complexity

Constant.

Iterator validity

No changes.

Data races

The container is accessed.
Concurrently accessing the elements of a set is safe.

Exception safety

No-throw guarantee: this member function never throws exceptions.

See also