std::unorde...p::max_size(3)

πŸ“¦ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

πŸŽ€ NAME πŸŽ€

std::unordered_map::max_size β€” the NAME line is literally std::unordered_map::max_size - std::unordered_map::max_size (yes, twice, we love a self-referential moment πŸ’–). This page comes from the C++ Standard Libary manual, where the header abbreviates it as std::unorde...p::max_size(3) β€” no cap, that's the exact spelling in the header. ✨


✨ Synopsis ✨

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

The tea β˜•: this 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. She's giving β€œtheoretical capacity realness.” πŸ’…


πŸ’– Parameters πŸ’–

  • (none) β€” literally no parameters, bestie. 🫢

🌸 Return value 🌸

Maximum number of elements. That's it, that's the return value. πŸ‘‘


πŸ¦‹ Complexity πŸ¦‹

Constant. Periodt. ✨


🧚 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. So like, the vibe is β€œtheoretical max,” but your actual RAM said β€œbestie, no.” 😭


πŸ”₯ Example πŸ”₯

// Run this code

#include <iostream>
#include <locale>
#include <unordered_map>

int main()
{
    std::unordered_map<char, char> p;
    std::unordered_map<long, char> 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() = 1,152,921,504,606,846,975 = 0xFFF,FFF,FFF,FFF,FFF
q.max_size() = 768,614,336,404,564,650 = 0xAAA,AAA,AAA,AAA,AAA

πŸ“ See also πŸ“

  • size β€” returns the number of elements (public member function). ✨

Okay bye bestie! This page's source/version is http://cppreference.com, dated 2024.06.10, and the footer spells the page std::unorde...p::max_size(3). Mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from