C ++ STL中的多集cbegin()和cend()函数
在本文中,我们将讨论C++STL中multiset::cbegin()和multiset::cend()函数的工作原理,语法和示例。
什么是C++STL中的多重集?
多重集是类似于集合容器的容器,这意味着它们以键的形式(类似于集合)以特定顺序存储值。
在多集中,将值标识为与集相同的键。多重集和集合之间的主要区别在于,集合具有不同的键,这意味着没有两个键是相同的,在多重集中可以有相同的键值。
多集键用于实现二进制搜索树。
什么是multiset::cbegin()?
multiset::cbegin()函数是C++STL中的内置函数,在<set>头文件中定义。cbegin()
表示常量开始函数,表示此函数返回指向多集容器开头的常量迭代器。
常量迭代器只能用于在多集容器中进行迭代,而不能在多集容器中进行更改。
语法
ms_name.cbegin();
参数
该函数不接受任何参数。
返回值
此函数返回一个常量迭代器,该迭代器指向容器的第一个元素。
示例
输入值
std::multiset<int> mymultiset = {1, 2, 2, 3, 4}; mymultiset.cbegin();
输出结果
1
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {10, 20, 30, 40, 50, 60}; multiset<int> check(arr, arr + 6); cout<<"First element fetched using cbegin() function: "<<*(check.cbegin()) << endl; for(auto i = check.cbegin(); i!= check.cend(); i++) cout << *i << " "; return 0; }
输出结果
First element fetched using cbegin() function: 10 10 20 30 40 50 60
什么是multiset::cend()?
multiset::cend()函数是C++STL中的内置函数,在<set>头文件中定义。cend()
表示常量结束函数,表示此函数返回指向经过多集容器最后一个元素的常量迭代器。
常量迭代器只能用于在多集容器中进行迭代,而不能在多集容器中进行更改。
语法
ms_name.cend();
参数
该函数不接受任何参数。
返回值
该函数返回一个常量迭代器,该迭代器指向容器最后一个元素之后的元素。
示例
输入值
std::multiset<int&t; mymultiset = {1, 2, 2, 3, 4}; mymultiset.cend();
输出结果
error
示例
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {10, 20, 30, 40, 50, 60}; multiset<int> check(arr, arr + 6); cout<<"Elements in the list are: "; for(auto i = check.cbegin(); i!= check.cend(); i++) cout << *i << " "; return 0; }
输出结果
Elements in the list are: 10 20 30 40 50 60