📜  C++ STL中的multimap :: crbegin()和multimap :: crend()

📅  最后修改于: 2021-05-30 02:19:48             🧑  作者: Mango

  • multimap :: crbegin()是C++ STL中的内置函数,它返回一个常量反向迭代器,该迭代器引用了multimap容器中的最后一个元素。由于multimap容器以有序的方式包含元素,因此crbegin()将指向根据容器的排序标准排在最后的元素。

句法:

multimap_name.crbegin()

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

返回值:该函数返回一个常量反向迭代器,该迭代器引用多图容器中的最后一个元素。

C++
// C++ program to illustrate
// multimap::crbegin() function
#include 
using namespace std;
 
int main()
{
 
    // initialize container
    multimap mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
    mp.insert({ 3, 60 });
    mp.insert({ 4, 20 });
    mp.insert({ 5, 50 });
 
    auto ite = mp.crbegin();
    cout << "The last element is {" << ite->first
    << ", " << ite->second << "}\n";
 
    // prints the elements
    cout << "\nThe multimap in reverse order is: \n";
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.crbegin(); itr != mp.crend(); ++itr) {
        cout << itr->first
             << '\t' << itr->second << '\n';
    }
    return 0;
}


C++
// C++ program to illustrate
// multimap::crend() function
#include 
using namespace std;
 
int main()
{
 
    // initialize container
    multimap mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
    mp.insert({ 3, 60 });
    mp.insert({ 4, 20 });
    mp.insert({ 5, 50 });
 
    // prints the elements
    cout << "\nThe multimap in reverse order is : \n";
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.crbegin(); itr != mp.crend(); ++itr) {
        cout << itr->first
             << '\t' << itr->second << '\n';
    }
    return 0;
}


输出:
The last element is {5, 50}

The multimap in reverse order is: 
KEY    ELEMENT
5    50
4    20
3    60
2    30
1    40




  • multimap :: crend()是C++ STL中的内置函数,该函数返回一个常量反向迭代器,该迭代器指向多图中第一个元素之前的理论元素。由于multimap容器按有序方式包含元素,因此根据容器的排序标准,crend()理论上将指向该元素之前的第一个元素。

句法:

multimap_name.crend()

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

返回值:该函数返回一个常量反向迭代器,该迭代器指向多图中第一个元素之前的理论元素。

C++

// C++ program to illustrate
// multimap::crend() function
#include 
using namespace std;
 
int main()
{
 
    // initialize container
    multimap mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
    mp.insert({ 3, 60 });
    mp.insert({ 4, 20 });
    mp.insert({ 5, 50 });
 
    // prints the elements
    cout << "\nThe multimap in reverse order is : \n";
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.crbegin(); itr != mp.crend(); ++itr) {
        cout << itr->first
             << '\t' << itr->second << '\n';
    }
    return 0;
}
输出:
The multimap in reverse order is : 
KEY    ELEMENT
5    50
4    20
3    60
2    30
1    40




要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”