C++ STL中的multiset cbegin()和cend()函数

C++ STL中的multiset cbegin()和cend()函数

multiset::cbegin() 是C++ STL中的内置函数,用于返回一个指向容器中第一个元素的常量迭代器。迭代器不能用于修改集合容器中的元素。迭代器可以逐个增加或减少以遍历集合。

语法:

constant_iterator multiset_name.cbegin()

参数: 该函数不接受任何参数。

返回值: 该函数返回一个指向容器中第一个元素的常量迭代器。

下面的程序说明了multiset::cbegin()方法。

// C++程序演示
// multiset::cbegin()函数
#include <bits/stdc++.h>
using namespace std;
int main()
{
 
    int arr[] = { 14, 10, 15, 11, 10 };
 
    // 从数组初始化集合
    multiset<int> s(arr, arr + 5);
 
    // 打印第一个元素
    cout << "第一个元素是: " << *(s.cbegin()) << endl;
 
    // 打印集合中的所有元素
    for (auto it = s.cbegin(); it != s.cend(); it++)
        cout << *it << " ";
 
    return 0;
}

输出:

第一个元素是: 10
10 10 11 14 15

multiset::cend() 是C++ STL中的内置函数,用于返回一个常量迭代器,该迭代器指向容器中最后一个元素之后的位置。迭代器不能用于修改集合容器中的元素。迭代器可以逐个增加或减少以遍历集合。

语法:

constant_iterator multiset_name.cend()

参数: 该函数不接受任何参数。

返回值: 该函数返回一个指向容器中最后一个元素之后位置的常量迭代器。

下面的程序说明了multiset::cend()方法。

// C++程序演示multiset::cend()函数
#include <bits/stdc++.h>
using namespace std;
int main()
{
 
    int arr[] = { 14, 10, 15, 11, 10, 15, 17, 17 };
 
    // 从数组初始化集合
    multiset<int> s(arr, arr + 8);
 
    // 打印集合中的所有元素
    for (auto it = s.cbegin(); it != s.cend(); it++)
        cout << *it << " ";
 
    return 0;
}

输出:

10 10 11 14 15 15 17 17

让我们以表格形式看到差异 -:

ID multiset cbegin() multiset cend()
1. 它用于返回指向容器中第一个元素的const_iterator。 它用于返回指向超出最后一个元素之后位置的const_iterator。
2. 其语法为-:const_iterator cbegin(); 其语法为-:const_iterator cend();
3. 它不接受任何参数。 它不接受任何参数。
4. 它的复杂度为常数。 它的复杂度为常数。
5. 其迭代器有效性不会改变。 其迭代器有效性不会改变。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

C++ 教程