📜  C++ STL中的multimap :: begin()和multimap :: end()

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

  1. multimap :: begin()是C++ STL中的内置函数,该函数返回一个引用了multimap容器中第一个元素的迭代器。由于multimap容器以有序的方式包含元素,因此begin()将指向根据容器的排序标准排在最前面的元素。

    句法:

    multimap_name.begin()
    

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

    返回值:该函数返回一个迭代器,该迭代器引用多图容器中的第一个元素

    // C++ function to illustrate
    // the multimap::begin() 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.begin();
      
        cout << "The first element is: ";
        cout << "{" << ite->first << ", "
             << ite->second << "}\n";
      
        // prints the elements
        cout << "\nThe multimap is : \n";
        cout << "KEY\tELEMENT\n";
        for (auto itr = mp.begin(); itr != mp.end(); ++itr) {
            cout << itr->first
                 << '\t' << itr->second << '\n';
        }
        return 0;
    }
    
    输出:
    The first element is: {1, 40}
    
    The multimap is : 
    KEY    ELEMENT
    1    40
    2    30
    3    60
    4    20
    5    50
    
  2. multimap :: end()是C++ STL中的内置函数,该函数将迭代器返回到理论元素,该理论元素在multimap中的最后一个元素之后。由于multimap容器按有序方式包含元素,因此end()将指向根据容器的排序标准在最后一个元素之后的理论位置。

    句法:

    multimap_name.end()
    

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

    返回值:该函数返回一个迭代器,该迭代器引用多图容器中的第一个元素

    // C++ function to illustrate
    // the multimap::end() 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 is : \n";
        cout << "KEY\tELEMENT\n";
        for (auto itr = mp.begin(); itr != mp.end(); ++itr) {
            cout << itr->first
                 << '\t' << itr->second << '\n';
        }
        return 0;
    }
    
    输出:
    The multimap is : 
    KEY    ELEMENT
    1    40
    2    30
    3    60
    4    20
    5    50
    
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”