Namespaces
Variants
Views
Actions

Difference between revisions of "cpp/container/vector/max size"

From cppreference.com
< cpp‎ | container‎ | vector
m (Add link to edit the included template)
Line 1: Line 1:
{{cpp/container/max_size|vector}}
+
{{page template|cpp/container/max_size|vector}}
  
 
[[fr:cpp/container/vector/max size]]
 
[[fr:cpp/container/vector/max size]]
 
[[it:cpp/container/vector/max size]]
 
[[it:cpp/container/vector/max size]]
 
[[ru:cpp/container/vector/max size]]
 
[[ru:cpp/container/vector/max size]]

Revision as of 10:00, 14 October 2012

 
 
 
 
size_type max_size() const;
(noexcept since C++11)
(constexpr since C++20)

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

Parameters

(none)

Return value

Maximum number of elements.

Complexity

Constant.

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.

Example

#include <iostream>
#include <locale>
#include <vector>
 
int main()
{
    std::vector<char> p;
    std::vector<long> q;
 
    std::cout.imbue(std::locale("en_US.UTF-8"));
    std::cout << std::uppercase
              << "p.max_size() = " << std::dec << p.max_size() << " = 0x"
              << std::hex << p.max_size() << '\n'
              << "q.max_size() = " << std::dec << q.max_size() << " = 0x"
              << std::hex << q.max_size() << '\n';
}

Possible output:

p.max_size() = 9,223,372,036,854,775,807 = 0x7,FFF,FFF,FFF,FFF,FFF
q.max_size() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFF

See also

returns the number of elements
(public member function) [edit]
returns the number of elements that can be held in currently allocated storage
(public member function) [edit]