Open In App

unordered_multimap cbegin() function in C++ STL

Improve
Improve
Like Article
Like
Save
Share
Report

The unordered_multimap::cbegin() is a built-in function in C++ STL which returns a constant iterator pointing to the first element in the container or to the first element in one of its bucket.

Syntax:

unordered_multimap_name.cbegin(n)

Parameters: The function accepts one parameter. If a parameter is passed, it returns a constant iterator pointing to the first element in the bucket. If no parameter is passed, then it returns a constant iterator pointing to the first element in the unordered_multimap container.

Return Value: It returns a constant iterator. It cannot be used to change the value of the unordered_multimap element.

Below programs illustrates the above function:

Program 1:




// C++ program to illustrate the
// unordered_multimap::cbegin() 
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
  
    // declaration
    unordered_multimap<int, int> sample;
  
    // inserts key and element
    sample.insert({ 1, 2 });
    sample.insert({ 3, 4 });
    sample.insert({ 3, 4 });
    sample.insert({ 2, 3 });
    sample.insert({ 2, 3 });
  
    // prints all key and element
    cout << "Key and Elements : \n";
    for (auto it = sample.begin(); it != sample.end(); it++)
        cout << "   " << it->first << "\t      " 
             << it->second << endl;
  
    auto it = sample.begin();
  
    // print the first element
    cout << "\nThe first element and key: " 
         << it->first << " ";
    cout << it->second;
  
    return 0;
}


Output:

Key and Elements : 
   2          3
   2          3
   1          2
   3          4
   3          4

The first element and key: 2 3

Program 2:




// C++ program to illustrate the
// unordered_multimap::cbegin(bucket) 
#include <bits/stdc++.h>
using namespace std;
  
int main()
{
  
    // declaration
    unordered_multimap<int, int> sample;
  
    // inserts element
    sample.insert({ 1, 2 });
    sample.insert({ 3, 4 });
    sample.insert({ 3, 4 });
    sample.insert({ 2, 3 });
    sample.insert({ 2, 3 });
  
    // prints all element
    cout << "Key and Elements of first bucket: \n";
    for (auto it = sample.cbegin(1); it != sample.cend(1); it++)
        cout << "   " << it->first << "\t      " 
             << it->second << endl;
  
    auto it = sample.cbegin(1);
  
    // print the first element
    cout << "\nThe first element and key in first bucket: "
         << it->first << " ";
    cout << it->second;
  
    return 0;
}


Output:

Key and Elements of first bucket: 
   1          2

The first element and key in first bucket: 1 2


Last Updated : 08 Aug, 2018
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads