C++ multimap::max_size() 函式



C++ 的std::multimap::max_size()函式用於返回一個multimap容器根據可用記憶體可以容納的最大元素數。它取決於系統和編譯器的實現。它為容器的容量提供了一個上限,允許有效地管理記憶體並避免潛在的溢位問題。此函式的時間複雜度是常數,即 O(1)。

語法

以下是 std::multimap::max_size() 函式的語法。

size_type max_size() const noexcept;

引數

它不接受任何引數。

返回值

此函式返回 multimap 可以容納的最大元素數。

示例

讓我們來看下面的例子,我們將演示 max_size() 函式的使用。

#include <iostream>
#include <map>
int main()
{
    std::multimap<int, char> a;
    std::cout << "Max_size of current multimap : " << a.max_size() << std::endl;
    return 0;
}

輸出

以下是上述程式碼的輸出:

Max_size of current multimap : 230584300921369395

示例

考慮下面的例子,我們將獲取 multimap 的當前大小和最大大小。

#include <iostream>
#include <map>
int main()
{
    std::multimap<int, char> a;
    a.insert({1, 'A'});
    a.insert({2, 'B'});
    std::cout << "Current_size : " << a.size() << std::endl;
    std::cout << "Max_size : " << a.max_size() << std::endl;
    return 0;
}

輸出

上述程式碼的輸出如下:

Current_size : 2
Max_size : 230584300921369395

示例

在下面的例子中,我們將檢查 multimap 是否為空。

#include <iostream>
#include <map>
int main()
{
    std::multimap<int, std::string> a;
    if (a.max_size() == 0) {
        std::cout << "It cannot hold any elements." << std::endl;
    } else {
        std::cout << "It can hold elements." << std::endl;
    }
    return 0;
}

輸出

如果我們執行上述程式碼,它將生成以下輸出:

It can hold elements.
multimap.htm
廣告