c ++中的cbegin函數用於返回一個常量迭代器,該迭代器指向無序映射中的第一個元素。
用法:
unordered_map.cbegin()
參數:它帶有一個可選參數N。如果設置,返回的迭代器將指向存儲桶的第一個元素,否則將指向容器的第一個元素。
返回值:指向unordered_map的第一個元素的常量迭代器。
以下示例程序旨在說明cbegin函數的工作方式:
// CPP program to demonstrate implementation of
// cbegin function in unordered_map
#include <bits/stdc++.h>
using namespace std;
int main()
{
unordered_map<string, int> mp;
// Adding some elements in the unordered_map
mp["g"] = 1;
mp["e"] = 2;
mp["k"] = 4;
mp["s"] = 5;
cout << "Contents of the unordered_map:\n";
for (auto it = mp.cbegin(); it != mp.cend(); it++)
cout << it->first << "==>>"
<< it->second << "\n";
}
輸出:
Contents of the unordered_map: s==>>5 k==>>4 g==>>1 e==>>2
cbegin()函數返回常量迭代器。如果嘗試更改值,則會出現編譯器錯誤。
// CPP program to demonstrate implementation of
// cbegin function in unordered_map
#include <bits/stdc++.h>
using namespace std;
int main()
{
unordered_map<string, int> mp;
// Adding some elements in the unordered_map
mp["g"] = 1;
mp["e"] = 2;
mp["k"] = 4;
mp["s"] = 5;
cout << "Contents of the unordered_map:\n";
for (auto it = mp.cbegin(); it != mp.cend(); it++)
it->second = 10; // This would cause compiler error
}
輸出:
prog.cpp:In function 'int main()': prog.cpp:18:20:error:assignment of member 'std::pair, int>::second' in read-only object it->second = 10; // This would cause compiler error ^
時間複雜度:平均O(1)。
相關用法
- C++ forward_list cbegin()用法及代碼示例
- C++ deque cbegin()用法及代碼示例
- C++ unordered_multimap cbegin()用法及代碼示例
- C++ unordered_multiset cbegin()用法及代碼示例
- C++ map cbegin()、cend()用法及代碼示例
- C++ set cbegin()、cend()用法及代碼示例
- C++ unordered_set cbegin()用法及代碼示例
- C++ list cbegin()、cend()用法及代碼示例
- C++ multiset cbegin()、cend()用法及代碼示例
- C++ array::cbegin()、array::cend()用法及代碼示例
- C++ multimap::cbegin()、multimap::cend()用法及代碼示例
- C++ vector::cbegin()、vector::cend()用法及代碼示例
- Node.js fs.statSync()用法及代碼示例
注:本文由純淨天空篩選整理自DrRoot_大神的英文原創作品 unordered_map cbegin in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。