C++ map emplace() 函数

2024年8月30日 | 阅读4分钟

C++ map emplace() 函数用于通过插入新元素来扩展 map 容器。元素直接构建(既不复制也不移动)。

元素的构造函数通过向此函数传递参数 args 来调用。只有当键尚未存在时,才会进行插入。

语法

参数

args:用于构造要插入到 map 中的元素的参数。

返回值

它返回一个布尔对,表示是否发生了插入,并返回一个指向新插入元素的迭代器。

示例 1

让我们看一个简单的例子来将元素插入到 map 中。

输出

Map contains following elements
a = 1
b = 2
c = 3
d = 4
e = 5

在上面的示例中,它只是使用给定的键值对将元素插入到 map m 中。

示例 2

让我们看一个简单的示例,插入元素并检查重复键。

输出

  map modified, now contains 
3 elements: (10, ten) (20, twenty) (30, thirty) 

Emplace failed, element with key 10 already exists.
  The existing element is (10, ten)

在上面的示例中,元素被插入到 map 中,当你尝试使用相同的键 10 时,它将显示一条错误消息,指出键 10 已经存在。

示例 3

让我们看一个简单的示例,通过分别向键和值传递构造函数参数来将元素插入到 map 中。

输出

a => a
b => abcd
c => cccccccccc
d => ddd

在上面的示例中,通过分别向键和值传递构造函数参数来将元素插入到 map 中。

示例 4

让我们看一个简单的例子来插入元素。

输出

Enter the number of fmly members : 3
Enter the name and age of each member: 
Ram 42
Sita 37
Laxman 40

Total memnber of fmly is:3
Details of fmly members: 

Name    |  Age 
__________________________
Laxman | 40 
Ram      | 42 
Sita       | 37

在上面的示例中,它只是根据用户的选择插入元素。

下一个主题C++ Map