python字典怎样用c++实现
时间: 2023-10-27 13:04:53 浏览: 99
在 C++ 中,可以使用 `std::map` 或 `std::unordered_map` 来实现字典的功能。
`std::map` 是基于红黑树实现的有序字典,它可以按照键值的大小进行排序并且支持快速的查找、插入和删除操作。以下是一个使用 `std::map` 实现字典的示例代码:
```cpp
#include <iostream>
#include <map>
#include <string>
int main() {
std::map<std::string, int> dict;
dict["apple"] = 1;
dict["banana"] = 2;
dict["cherry"] = 3;
std::cout << "The value of apple is " << dict["apple"] << std::endl;
for (auto& kv : dict) {
std::cout << kv.first << " " << kv.second << std::endl;
}
return 0;
}
```
`std::unordered_map` 是基于哈希表实现的无序字典,它可以快速地查找、插入和删除键值对,但是无法按照键值的大小进行排序。以下是一个使用 `std::unordered_map` 实现字典的示例代码:
```cpp
#include <iostream>
#include <unordered_map>
#include <string>
int main() {
std::unordered_map<std::string, int> dict;
dict["apple"] = 1;
dict["banana"] = 2;
dict["cherry"] = 3;
std::cout << "The value of apple is " << dict["apple"] << std::endl;
for (auto& kv : dict) {
std::cout << kv.first << " " << kv.second << std::endl;
}
return 0;
}
```
需要注意的是,在 C++ 中,`std::map` 和 `std::unordered_map` 都是模板类,需要指定键值类型和值类型。同时,需要包含 `map` 或 `unordered_map` 头文件。
阅读全文