21xrx.com
2024-11-25 03:15:30 Monday
登录
文章检索 我的文章 写文章
C++ 映射(map)操作
2023-07-12 05:50:55 深夜i     --     --
C++ map 操作 键值对 迭代器

C++ 中的映射(map)是一种关联容器,可以将数据存储到键值对中,其中键是唯一的,它们可以是任何可比较的类型,值可以是任何类型。使用映射可以快速查找数据,而无需进行线性搜索,其效率非常高。

在 C++ 语言中,map 是由标准STL库提供的一种容器,其使用方式与 vector 和其他容器类似。要使用 map,首先需要包含头文件 #include ,然后使用语法map 来声明映射,其中 Key 为键的类型,Value 为值的类型。

下面是一个简单的示例,展示了如何定义和使用一个映射:


#include <iostream>

#include <map>

using namespace std;

int main()

{

  // 定义一个映射

  map<string, int> myMap;

  // 往映射中插入键值对

  myMap["apple"] = 30;

  myMap["banana"] = 40;

  myMap["pear"] = 50;

  // 访问映射中的值

  cout << "apple: " << myMap["apple"] << endl;

  cout << "banana: " << myMap["banana"] << endl;

  cout << "pear: " << myMap["pear"] << endl;

  // 遍历映射

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

  

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

  

  // 判断某个键是否在映射中

  if (myMap.find("banana") != myMap.end())

  {

    cout << "banana is in the map with value " << myMap["banana"] << endl;

  }

  return 0;

}

输出结果如下:


apple: 30

banana: 40

pear: 50

apple: 30

banana: 40

pear: 50

banana is in the map with value 40

在上面的示例中,我们定义了一个映射 myMap,具有键类型为 string,值类型为 int。然后,我们使用运算符 [] 将一些键值对插入到映射中。接着,我们访问了映射中的值,并使用迭代器遍历了整个映射。最后,我们使用 find 函数来检查是否有一个键存在于映射中。

除了上面的基本操作之外,映射还有许多其他的成员函数,可以用来查询、修改和删除映射中的元素或属性。例如,find、count、empty、size、insert、erase、clear、swap 等等。

总之,C++ 中的映射是一种非常有用的容器,它可以帮助我们快速实现各种数据结构或算法,提高程序的效率和可读性。通过了解并熟练掌握映射操作,可以让我们的编程工作更加高效和轻松。

  
  

评论区

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