C ++ STL中的map :: begin()和end()

在本文中,我们将讨论C ++ STL中map::begin()和map::end()函数的工作,语法和示例。

什么是C ++ STL中的映射?

映射是关联容器,它有助于按特定顺序存储由键值和映射值的组合形成的元素。在映射容器中,数据始终在内部借助其关联的键进行排序。映射容器中的值通过其唯一键访问。

什么是map::begin()?

map::begin()函数是C ++ STL中的内置函数,该函数在  header file. begin() is used to access the element which is at the very beginning of the associated map container.

该函数返回一个迭代器,该迭代器指向容器的第一个元素。当容器中没有值时,无法取消迭代器的引用

语法

map_name.begin();

参量

该函数不接受任何参数。

返回值

此函数返回一个迭代器,该迭代器指向映射容器的第一个值。

示例

输入值

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_name.end();

参量

该函数不接受任何参数。

返回值

此函数返回一个迭代器,该迭代器指向过去的映射容器的最后一个值。

示例

输入值

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