C++ STL 中的 map::begin() 和 end()
在本文中,我们将讨论 C++ STL 中 map::begin() 和 map::end() 函数的工作原理、语法和示例。
什么是 C++ STL 中的 Map?
Map 是关联容器,它可以方便地存储由键值和映射值组合而成的元素,并以特定的顺序进行存储。在 map 容器中,数据在内部始终通过其关联的键进行排序。map 容器中的值可以通过其唯一的键进行访问。
什么是 map::begin()?
map::begin() 函数是 C++ STL 中的内置函数,它在
此函数返回一个迭代器,该迭代器指向容器的第一个元素。当容器中没有值时,无法取消引用迭代器。
语法
map_name.begin();
参数
该函数不接受任何参数。
返回值
此函数返回一个迭代器,该迭代器指向 map 容器的第一个值。
示例
输入
std::map<int> mymap; mymap.insert({‘a’, 10}); mymap.insert({‘b’, 20}); mymap.insert({‘c’, 30}); mymap.begin();
输出
a:10
示例
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_1; TP_1[1] = 10; TP_1[2] = 20; TP_1[3] = 30; TP_1[4] = 40; cout<<"Elements of TP_1 after swap:\n"<< "\tKEY\tELEMENT\n"; for (auto i = TP_1.begin(); i!= TP_1.end(); i++) { cout << "\t" << i->first << "\t" << i->second << '\n'; } return 0; }
输出
Elements of TP_1 after swap: KEY ELEMENT 1 10 2 20 3 30 4 40
什么是 map::end()?
map::end() 函数是 C++ STL 中的内置函数,它在 <map> 头文件中定义。end() 用于访问容器中最后一个元素之后的元素,或者最后一个元素之后的元素。
此函数返回一个迭代器,该迭代器指向容器中最后一个元素之后的元素。当容器中没有值时,无法取消引用迭代器。
通常,begin() 和 end() 用于通过提供范围来迭代 map 容器。
语法
map_name.end();
参数
该函数不接受任何参数。
返回值
此函数返回一个迭代器,该迭代器指向 map 容器最后一个值之后的元素。
示例
输入
std::map<int> mymap; mymap.insert({‘a’, 10}); mymap.insert({‘b’, 20}); mymap.insert({‘c’, 30}); mymap.end();
输出
error
示例
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_1; TP_1[1] = 10; TP_1[2] = 20; TP_1[3] = 30; TP_1[4] = 40; cout<<"Elements of TP_1 after swap:\n"<< "\tKEY\tELEMENT\n"; for (auto i = TP_1.begin(); i!= TP_1.end(); i++) { cout << "\t" << i->first << "\t" << i->second << '\n'; } return 0; }
输出
Elements of TP_1 after swap: KEY ELEMENT 1 10 2 20 3 30 4 40
广告