📜  C++ STL中的unordered_multiset end()函数(1)

📅  最后修改于: 2023-12-03 15:29:51.104000             🧑  作者: Mango

C++ STL中的unordered_multiset end()函数

unordered_multiset是C++ STL中的关联式容器之一,它可以容纳多个相同的元素,并且不按任何顺序进行排列。end()函数是unordered_multiset中的成员函数,用于返回一个指向容器尾部的迭代器。

函数原型
iterator end() noexcept;
const_iterator end() const noexcept;
参数说明

该函数不需要传入任何参数。

返回值
  • iterator:指向容器中最后一个元素的下一个位置的迭代器。
  • const_iterator:指向容器中最后一个元素的下一个位置的常量迭代器。
示例代码
#include <iostream>
#include <unordered_set>
using namespace std;

int main() {
    unordered_multiset<int> mySet = {1, 2, 3, 4, 5};

    // 遍历 unordered_multiset
    for (auto it = mySet.begin(); it != mySet.end(); ++it) {
        cout << *it << " ";
    }
    cout << endl;

    // 找到 unordered_multiset 中最后一个元素
    auto last = mySet.end();
    --last;
    cout << "Last element: " << *last << endl;

    return 0;
}

在上面的示例代码中,我们先创建了一个unordered_multiset对象mySet,然后使用begin()end()函数遍历了容器中的元素并输出了它们。接着,我们使用end()函数找到了容器中最后一个元素,并输出了它的值。

注意事项
  • end()函数返回的迭代器指向的是最后一个元素的下一个位置,因此不能对其进行解引用操作。
  • 如果unordered_multiset为空,则调用end()函数将返回一个指向第一个位置的迭代器。