📅  最后修改于: 2023-12-03 14:39:52.344000             🧑  作者: Mango
在C++ STL中,unordered_multimap是一种哈希表数据结构,它存储键值对,并允许在常数时间内查找、插入和删除元素。unordered_multimap中的cbegin()函数是用来返回一个常量迭代器,指向unordered_multimap中第一个元素。本文将对该函数进行详细介绍。
unordered_multimap的cbegin()函数原型如下:
const_iterator cbegin() const noexcept;
其中,const_iterator是unordered_multimap的常量迭代器类型。
cbegin()函数返回一个常量迭代器,指向unordered_multimap中第一个元素。如果unordered_multimap为空,则该常量迭代器等于cend()函数返回的常量迭代器。
下面是一个使用unordered_multimap cbegin()函数的示例代码:
#include <iostream>
#include <unordered_map>
int main() {
std::unordered_multimap<int, char> mymap = {{1, 'a'}, {2, 'b'}, {2, 'c'}, {3, 'd'}};
std::cout << "unordered_multimap contains:";
for (auto it = mymap.cbegin(); it != mymap.cend(); ++it)
std::cout << " " << it->first << ":" << it->second;
std::cout << "\n";
return 0;
}
输出结果如下:
unordered_multimap contains: 1:a 2:b 2:c 3:d
在上面的示例代码中,我们创建了一个unordered_multimap mymap并初始化了它的值,然后使用cbegin()函数返回一个常量迭代器it指向unordered_multimap中第一个元素,通过迭代器遍历unordered_multimap,并输出所有的键值对。