21xrx.com
2024-12-22 23:35:56 Sunday
登录
文章检索 我的文章 写文章
C++中unordered_map的初始化方法
2023-06-27 00:37:22 深夜i     --     --
C++ unordered_map 初始化方法

在C++中,unordered_map是一个非常有用的数据结构,它可以用于快速查找和插入键值对。在使用unordered_map时,我们需要初始化它,以便使用它来存储和访问数据。下面是一些unordered_map的初始化方法。

1. 初始化空unordered_map

我们可以使用默认构造函数来初始化一个空的unordered_map。以下是示例:


#include <unordered_map>

using namespace std;

unordered_map<int, string> myMap;

在这个例子中,我们创建了一个名为myMap的unordered_map,用于将int类型的键映射到string类型的值。

2. 初始化具有初始值的unordered_map

我们可以使用初始化器列表来初始化具有初始值的unordered_map。以下是一个示例:


#include <unordered_map>

using namespace std;

unordered_map<int, string> myMap = { 1, "banana", 3 };

在这个例子中,我们创建了一个名为myMap的unordered_map,并将其初始化为三个键值对,其键是int类型,值是string类型。

3. 通过键值列表初始化unordered_map

我们可以使用std::make_pair函数和键值列表来初始化unordered_map。以下是一个示例:


#include <unordered_map>

using namespace std;

unordered_map<int, string> myMap;

myMap.insert(make_pair(1, "apple"));

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

myMap.insert(make_pair(3, "orange"));

在这个例子中,我们创建了一个名为myMap的unordered_map,并使用insert函数将三个键值对插入到其中。

4. 使用另一个unordered_map初始化unordered_map

我们可以使用另一个unordered_map来初始化一个unordered_map。以下是一个示例:


#include <unordered_map>

using namespace std;

unordered_map<int, string> myMap = { "apple", "banana", "orange" };

unordered_map<int, string> myMap2(myMap);

在这个例子中,我们创建了一个名为myMap的unordered_map,并将其初始化为三个键值对。然后,我们使用myMap2的构造函数将其初始化为myMap的一个拷贝。

总结

在C++中,有许多不同的方法来初始化unordered_map。我们可以使用默认构造函数、初始化器列表、键值列表或另一个unordered_map来完成初始化。选择使用哪种方法取决于我们需要的场景和数据。无论我们使用哪种方法,我们都可以使用unordered_map来简化我们的代码并实现快速查找和插入键值对的操作。

  
  

评论区

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