std::set<Key,Compare,Allocator>::max_size
From cppreference.com
| size_type max_size() const; |
(until C++11) | |
| size_type max_size() const noexcept; |
(since C++11) | |
Returns the maximum number of elements the container is able to hold due to system or library implementation limitations, i.e. std::distance(begin(), end()) for the largest container.
Contents |
[edit] Parameters
(none)
[edit] Return value
Maximum number of elements.
[edit] Complexity
Constant.
[edit] Notes
This value typically reflects the theoretical limit on the size of the container, at most std::numeric_limits<difference_type>::max(). At runtime, the size of the container may be limited to a value smaller than max_size() by the amount of RAM available.
[edit] Example
Run this code
#include <iostream> #include <set> const char* separate(unsigned long long n) { static char buf[64]; int i{sizeof(buf) - 1}, j{}; buf[i] = '\0'; do { buf[--i] = '0' + (n % 10); if (j++ % 3 == 2) buf[--i] = '\''; } while (n /= 10); return buf + i + (buf[i] == '\'' ? 1 : 0); } int main() { std::set<char> s; std::cout << "Maximum size of a 'set' is " << separate(s.max_size()) << "\n"; }
Possible output:
Maximum size of a 'set' is 576'460'752'303'423'487
See also
| returns the number of elements (public member function) |

