c++

C++ dictionary如何实现

小樊
148
2024-07-21 11:55:01
栏目: 编程语言

在C++中实现一个dictionary(字典)可以使用std::map或者unordered_map来实现。这两个容器都可以用来存储键值对,并且提供了快速的查找和插入操作。

以下是一个使用std::map来实现dictionary的简单示例:

#include <iostream>
#include <map>
#include <string>

int main() {
    std::map<std::string, int> dictionary;

    // 添加键值对
    dictionary["apple"] = 10;
    dictionary["banana"] = 5;
    dictionary["orange"] = 8;

    // 查找键值对
    std::cout << "apple: " << dictionary["apple"] << std::endl;
    std::cout << "banana: " << dictionary["banana"] << std::endl;
    std::cout << "orange: " << dictionary["orange"] << std::endl;

    // 遍历字典
    for (const auto& pair : dictionary) {
        std::cout << pair.first << ": " << pair.second << std::endl;
    }

    return 0;
}

在上面的示例中,我们使用std::map<std::string, int>来存储键值对,键是一个字符串,值是一个整数。我们可以通过[]操作符来访问和修改键值对,也可以使用迭代器来遍历整个dictionary。

如果要实现一个无序的dictionary,可以使用std::unordered_map来代替std::map,用法类似。unordered_map提供了更快的查找和插入操作,但是不会按照键的顺序存储键值对。

0
看了该问题的人还看了