美文网首页
在C++中实现Python中的字典(Dict)

在C++中实现Python中的字典(Dict)

作者: LabVIEW_Python | 来源:发表于2022-01-23 11:53 被阅读0次

在Python中,字典是一个很好用且很常用的数据结构,用于存放“键-值”对。而C++语言中,没有提供直接开箱可用的字典数据结构,而是通过C++标准模板库(STL)中的map关系式容器来实现。

map操作的范例程序如下:

#include<map>  //map C++ STL库
#include<string> //C++ string 类库
#include<iostream> //输入输出的iostream类库

using namespace std;

int main()
{
    /* 创建字典key-value pair */
    typedef map<string, string> StudentInfo;
    StudentInfo s_info;
    s_info["Jack"] = "boy";
    s_info.insert(StudentInfo::value_type("Lucy", "girl"));
    s_info.insert(pair<string, string>("Tom", "boy"));
    s_info["Peter"] = "boy";

    /* 获取字典长度 */
    cout << "The Size of s_info: " << s_info.size() << endl;

    /* 查找字典元素 */
    cout << "The Gender of Tom is: " << s_info.find("Tom")->second << endl;

    /* 遍历字典元素 */
    StudentInfo::iterator it; //定义StudentInfo的迭代器
    for (it = s_info.begin(); it!=s_info.end(); it++)
    {
        cout << "key: " << it->first << "; value: " << it->second << endl;
    }

    return 0;
}
运行结果: 范例运行结果

C++ map的基本操作函数:

  • begin() 返回指向map头部的迭代器
  • clear() 删除所有元素
  • count() 返回指定元素出现的次数, (帮助评论区理解: 因为key值不会重复,所以只能是1 or 0)
  • empty() 如果map为空则返回true
  • end() 返回指向map末尾的迭代器
  • equal_range() 返回特殊条目的迭代器对
  • erase() 删除一个元素
  • find() 查找一个元素
  • get_allocator() 返回map的配置器
  • insert() 插入元素
  • key_comp() 返回比较元素key的函数
  • lower_bound() 返回键值>=给定元素的第一个位置
  • max_size() 返回可以容纳的最大元素个数
  • rbegin() 返回一个指向map尾部的逆向迭代器
  • rend() 返回一个指向map头部的逆向迭代器
  • size() 返回map中元素的个数
  • swap() 交换两个map
  • upper_bound() 返回键值>给定元素的第一个位置
  • value_comp() 返回比较元素value的函数

相关文章

  • 在C++中实现Python中的字典(Dict)

    在Python中,字典是一个很好用且很常用的数据结构,用于存放“键-值”对。而C++语言中,没有提供直接开箱可用的...

  • python中的dict和set

    一:字典dict python中的dict和golang中map的概念是一致的,称为“字典”。 dict可以用在需...

  • python应该如何遍历字典

    字典,dict 字典(dict)结构在python web开发中十分常见,常用于存储json格式的数据。当然pyt...

  • python日常

    1. Python3中字典(dict)合并的几种方法 方法一:字典的update()方法 方法二:字典的dict(...

  • 2018-11-21

    3.6) 字典类型:dict 字典dict 是python中唯一的映射类型(哈希表) 字典对象是可变的,但key是...

  • Python 小技巧

    1 Python: dict 小技巧 注意:Python 3 中的 dict 是有序的。 1.1 别样的合并字典技...

  • Python 字典访问的三种方法

    在python程序开发中,经常对字典数据操作,例如:dict = {'Name': 'Zara', 'Age': ...

  • 工作中遇到的hashtable

    一.redis 中使用的字典 redis的字典是由hash表实现的,代码主要是在dict.cpp/dict.h中 ...

  • python中的字典(dict)

    字典是无序的对象合集,使用键-值(key-value)对存储,具有较快的查找速度 键(key)必须使用不可变类型 ...

  • Python札记6_字典1

    Python中存在一种叫做字典dictionary的对象类型,用dict表示,字典中的元素用{ }括起来,字典是无...

网友评论

      本文标题:在C++中实现Python中的字典(Dict)

      本文链接:https://www.haomeiwen.com/subject/bmrmhrtx.html