map<int, int> cnt;
时间: 2024-12-16 19:18:32 浏览: 2
<stdargh>可变长参数-Tarane课程设计
Map容器`<int, int>`用于存储键值对,其中键(key)为整数,值(value)也为整数。这里我们创建了一个名为`cnt`的map实例。让我们分步了解如何操作它:
1. 定义并初始化map[^1]:
```cpp
#include <map>
// 创建一个map<int, int>
map<int, int> cnt;
// C++11及以上版本使用花括号直接初始化,从映射中插入元素
cnt = {
{1, 1},
{2, 2},
{3, 3} // 插入键值对 (键, 值)
};
```
2. 插入元素:
```cpp
// 插入单个元素
cnt[4] = 4; // 如果4对应的值不存在,会自动添加新键值对
// 或者批量插入
std::vector<std::pair<int, int>> pairs = {{5, 5}, {6, 6}};
cnt.insert(pairs.begin(), pairs.end()); // 同时插入多对键值对
```
3. 访问和修改值:
```cpp
// 获取特定键的值
int value = cnt[1]; // 返回键1对应的值,如果键不存在则抛出异常
// 修改值
cnt[2] = 7; // 将键2的值改为7
// 检查键是否存在
if (cnt.find(4) != cnt.end()) {
std::cout << "Key 4 exists with a value of: " << cnt[4] << '\n';
}
```
注意:不同的C++编译器可能对某些特性有不同的支持,比如Visual Studio 2012可能不支持直接的花括号初始化。查看编译器文档以确认具体要求。
阅读全文