21xrx.com
2024-11-08 21:59:36 Friday
登录
文章检索 我的文章 写文章
C++中的map有多少种使用方法?
2023-06-27 21:10:36 深夜i     --     --
C++ map 使用方法

C++中的map是一种关联容器,它将一组键值对存储为对象。它提供了快速且高效的查找和访问元素的方法。map可以通过多种方式使用,包括以下几种:

1. 插入与查找

插入元素使用insert()函数,可以插入一对键值对或一个元素的迭代器。查找元素使用find()函数,它通过键值查找元素并返回一个指向该元素的迭代器。


map<int, string> myMap;

myMap.insert(pair<int, string>(1, "One"));

myMap.insert(make_pair(2, "Two"));

myMap[3] = "Three";

map<int, string>::iterator it = myMap.find(2);

if (it != myMap.end())

  cout << "Value found: " << it->second << endl; 

2. 删除元素

使用erase()函数可以根据键值或迭代器删除元素。erase()函数返回下一个元素的迭代器。


map<int, string> myMap;

myMap.insert(pair<int, string>(1, "One"));

myMap.insert(make_pair(2, "Two"));

myMap.erase(1);

map<int, string>::iterator it = myMap.find(2);

if (it != myMap.end()) {

  myMap.erase(it); 

}

3. 遍历元素

使用迭代器遍历map中元素,可以使用begin()和end()函数获取map的起始和终止迭代器。


map<int, string> myMap;

myMap.insert(pair<int, string>(1, "One"));

myMap.insert(make_pair(2, "Two"));

myMap[3] = "Three";

for (auto it = myMap.begin(); it != myMap.end(); ++it)

  cout << it->first << " : " << it->second << endl;

4. 访问元素

通过map的键值可以访问map中的元素。可以使用[]运算符或at()函数获取键对应的值。


map<int, string> myMap;

myMap.insert(pair<int, string>(1, "One"));

myMap.insert(make_pair(2, "Two"));

myMap[3] = "Three";

string value = myMap[1];

cout << "Value of key 1: " << value << endl;

value = myMap.at(2);

cout << "Value of key 2: " << value << endl;

总结:

map是一个非常实用的C++容器,它提供了快速查找和访问元素的方法。以上是四种常用的map使用方法,开发者可以根据具体情况选择使用。为了避免出现不必要的错误,使用map时要注意保持键的唯一性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复