c++ Primer学习完后第十一章关联容器的小结

C++Primer 第五版 ——《第十一章 》关联容器 目录 Preface 使用关联容器 定义关联容器 以及关联容器支持的操作(376P) 初始化multimap 或 multiset ( 377P) 有序容器的关键字类型的限制 ( 378P) pair 标准库类型 ( 379P ) pair 类型提供的操作(380P) 使用 pair 类型作为函数的返回值类型 以及 使用 make_pair 来创建 pair对象(380P) ... 阅读详情

关联容器,有8种。map,unordered_map,multimap,unordered_multimap,
set,unordered_set,multiset,unordered_multiset。
map是 “关键字-值”。例如map可以这样定义,map<string,int> test。利用string作为关键字,查找int的值。而set只有关键字,例如set这样定义。如果向map或set中添加相同的关键字的时候,也不会有什么改变。于是就有了multimap和multiset来允许有相同的关键字添加。如果用迭代器打印出他们里面的内容时,会发现他们是按关键字来排序的。如果前面带了unordered这样的字样,那他们就是无序的,按哈希函数来排列。
map的迭代器解引用后是pair类型的,这点要注意。set和顺序容器一样。pair的类型与map的类型一样。map<string,int> test;则pair的类型就是pair<string,int>。pair有两个public的成员,first和second。分别是string和int的。即first是map的关键字,second是值。
关联容器的下标操作与顺序容器的操作不一样。关联容器下标操作是利用关键字来访问。
无序容器是用哈希函数和“==”运算符排列。对于内置类型(int,string等等)可以直接使用。但是对于自定义的类型就需要我们自己提供模板。

一篇搞懂C++ STL 关联容器std::set C++ 标准模板库(STL)提供了多种容器类,用于高效地处理各种数据。std::set是 STL 中的一种关联容器,用于存储唯一的有序元素。它利用平衡二叉树结构(如红黑树)来实现高效的元素查找、插入和删除操作。本文将详细介绍std::set的构造函数、成员函数、以及如何使用它。我们还将解释什么是关联容器,并提供示例代码以演示std::set的用法。关联容器是 STL 中的一类容器,它们通过某种数据结构(通常是平衡树)来实现高效的元素查找、插入和删除。与顺序容器(如和std::deque。 阅读详情

相关推荐

关于石墨烯费米能级和偏置电压之间的关系问题

石墨烯费米能级与电压的关系问题

qq_37946542的博客 3514

STL关联容器概述

1. 概念 STL容器大的方向分为两类,序列式容器和关联式容器,这两者通过数据在容器内的排列来区分,关联容器是通过键(key)存储和读取元素的,而顺序容器则通过元素在容器中的位置顺序存储和访问元素。标准的STL序列容器包括:vector、list、deque、heap(算法呈现)、stack(适配器)、queue(适配器)、priority_queue(适配器)。标准的STL关联式容器包括:set...

ruilinruirui 338

WINDOWS下SIP拨号的实现

在WIN10上拨打SIP电话  由于我的交换原理实验有一个是关于SIP的抓包的。而之前从未接触过SIP,所以在如何完成一次SIP拨号上遇到了不少问题,查了好多资料都没有完整的或者写的很清楚的,这里就对那些资料做一个总结,给出一个比较完善的解决方案,一来是记录此次实验的收获,而来也可能为其他有同样困惑的人解惑。  废话不多说直接开始。首先是下载一个可以拨打SIP电话的客户终端,这里我选择的是MicroSIP, 下载红圈内的文件,下载好之后直接一路安装即可,没有什么特别注意的地方。  安装好客户端之后,就需要注

weixin_43918519的博客 3807

【STL】STL之顺序容器和关联容器总结

顺序容器          Vector中所采用的数据结构非常简单:线性连续空间。当分配空间被占满而仍然需要添加元素时,vector便会进行一场空间重新配置的大工程!在这里,程序员需要注意的是,一旦引起空间重新配置,之前指向原vector的所有迭代器就都失效了,这一点在工程中容易引起bug。          List则对空间的运用有绝对的精准,一点也不浪费。注意,list内部构成的实际是一个

csdn_chai的博客 2685

银河麒麟服务器操作系统V10SP3 U盘安装中“基础软件仓库错误”的排查与修复指南

本文针对在无网络环境下使用U盘安装银河麒麟服务器操作系统V10SP3时,遇到的“基础软件仓库错误”问题,提供了详细的排查与修复指南。核心解决方案是通过进入救援模式,使用lsblk命令确定U盘实际设备路径,并在系统引导时手动添加inst.repo内核参数来指定安装源,从而绕过安装程序的自动探测故障,确保安装流程顺利进行。

ik67890123的博客 1197

从零开始:用RFSOC XCZU47DR搭建软件无线电开发环境(2023最新版)

本文详细介绍了如何使用Xilinx RFSoC XCZU47DR搭建高性能软件无线电(SDR)开发环境,涵盖硬件选型、开发环境配置、射频子系统校准及实战应用开发。特别针对2023年最新技术需求,提供从基础配置到高级优化的完整指南,助力科研人员和工程师快速掌握RFSoC开发技术。

weixin_42525005的博客 512

STL之顺序容器和关联容器总结

顺序容器          Vector中所采用的数据结构非常简单:线性连续空间。当分配空间被占满而仍然需要添加元素时,vector便会进行一场空间重新配置的大工程!在这里,程序员需要注意的是,一旦引起空间重新配置,之前指向原vector的所有迭代器就都失效了,这一点在工程中容易引起bug。          List则对空间的运用有绝对的精准,一点也不浪费。注意,list内部构成的实际是一个

lhc548453346的博客 2707

UVM验证中,为什么我的pack_bytes()返回长度是0?手把手教你排查自定义do_pack函数

本文深入解析UVM验证中pack_bytes()返回长度为0的常见原因及系统排查方法。从UVM打包机制原理出发,详细列举了super.do_pack()缺失、field automation冲突等典型问题,并提供动态数组处理、位宽计算等进阶调试技巧,帮助开发者快速定位和解决自定义do_pack函数问题。

weixin_42523693的博客 127

C++标准库之关联容器(C++ Primer)

一、关联容器 map\multimap set\multiset 关联容器是通过红黑树来实现的。 1、关联容器的初始化 默认初始化 拷贝初始化(或者为一个容器的迭代器区间) 初始化列表初始化 2、关键字类型的要求 关键字类型定义一个“行为正常”的<运算符; 通过制定行为正常的comp函数:multiset<Sales_data, decltype(compareIsbn)*...

new_start_2018的博客 296

【Flutter 面试题】 怎么减少Widget的重新构建?

关于 const 关键字的使用:在 Flutter 开发中,任何时候当你确定一个 Widget 在其整个生命周期内都不会发生变化时,使用 const 关键字声明这个 Widget。这样的声明告诉 Flutter 框架这个 Widget 可以在编译时生成,后续的构建周期中可以重用已经创建的 Widget,从而避免了重复的构建开销。这适用于静态文本、图标或整个不变的 Widget 树。

Code Metaverse 1577

Ardupilot飞控姿态角与姿态角速度控制过程分析(超长篇)

目录 目录 摘要 1.代码控制过程分析 摘要 本节主要记录自己学习ardupilot飞控代码的姿态角速度的控制过程 1.代码控制过程分析 可以看出:AC_AttitudeControl *attitude_control; //指针对象 virtual void rate_controller_run() = 0;是AC_AttitudeContro...

陌城烟雨 1万+

【c++ primer 笔记】第11章 关联容器

关联容器中的元素按关键字来保存和访问顺序容器中的元素按他们在容器中的位置来保存和访问关联容器与顺序容器许多行为相同,但是有着根本不同,不同之处反应关键字作用关联容器支持高效的关键字查找和访问关联容器包括map和set。头文件定义map和multimap在头文件 map 中,set和multiset在头文件 set 中,无序 map 和无序 set 分别在头文件 unordered_map 和 unordered_set 中。容器类型解释按关键字有序保存元素map关键数组:保存。......

小呆鸟blog 1596

Open3D 可视化(1)——简单可视化【2026最新版】

简单可视化,博客长期更新,本文最新更新时间为:2026年5月10日。

点云侠的博客 5686

《C++ Primer》学习笔记/习题答案 总目录

文章目录前言专栏C++学习笔记目录第一章 - 快速入门第二章 - 变量和基本类型第三章 - 标准库类型第四章 - 数组和指针第五章 - 表达式第六章 - 语句第七章 - 函数第八章 - 标准 IO 库第九章 - 顺序容器第十章 - 关联容器第十一章 - 泛型算法第十二章 - 类第十三章 - 复制控制第十四章 - 重载操作符与转换第十五章 - 面向对象编程第十六章 - 模板和泛型编程第十七章 - 用...

种树最好的时间是10年前,其次是现在!!! 4万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C++ Primer第5版 习题答案 第十一章

C++ Primer第5版 习题答案 第十一章

zjzytnn的博客 1869

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【C++ Primer】第十一章 关联容器 (练习)

C++ Primer 5th - 第十一章 - 练习

闻韶 525

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

《C++ Primer》学习笔记(十一):关联容器

第11章 关联容器 关联容器支持高效的关键字查找和访问操作。2个主要的关联容器(associative-container)类型是map和set。 map中的元素是一些键值对(key-value):关键字起索引作用,值表示与索引相关联的数据。 set中每个元素只包含一个关键字,支持高效的关键字查询操作:检查一个给定关键字是否在set中。 标准库提供了8个关联容器,它们之间的不同体现在三个方面:...

种树最好的时间是10年前,其次是现在!!! 3108

C++ Primer 学习笔记 第十一章 关联容器

关联容器中的元素是按关键字来保存和访问的,与之相对的顺序容器是按它们在容器中的顺序来保存和访问的。 关联容器支持搞笑的关键字查找和访问,两个主要的关联容器类型是map和set。map中的元素是一些键(关键字)值对,键起到索引的作用,值则表示与索引相关的数据。set中每个元素只包含一个关键字(关键字即值),set支持高效的关键字查询操作。 标准库提供8个关联容器,它们的不同体现在三个不同维度上: 1...

tus00000的博客 2694

《C++Primer 第五版》——第十一章 关联容器

《C++Primer 第五版》——第十一章 关联容器10.1 概述函数 find 的算法如何工作迭代器令算法不依赖于容器,但算法依赖于元素类型的操作10.2 初识泛型算法10.2.1 只读算法算法和元素类型操作两个序列的算法10.2.2 写容器元素的算法算法不检查写操作,这是程序员的责任插入迭代器 back_inserter拷贝算法10.2.3 重排容器元素的算法消除重复单词使用unique使用容器操作删除元素10.3 定制操作 lambda10.3.1 向算法传递函数谓词排序算法10.3.2 lambda

KCDCY的博客 643

C++ Primer 总结索引 | 第十一章:关联容器

使用关联容器;关联容器概述:emplace_back和push_back,定义关联容器,关键字类型的要求,pair类型;关联容器操作:关联容器迭代器,添加元素,删除元素,map的下标操作,访问元素;无序容器:哈希处理散列冲突的方法,关于find的补充:unordered_map / map

AsherGu的博客 1311

C++ Primer 关联容器

文章目录关联容器和顺序容器的区别引言使用关联容器使用map 关联容器和顺序容器的区别 关联容器和顺序容器有着根本的不同:关联容器中的元素是按关键字来保存和访问的。与之相对的,顺序容器中的元素是按它们在容器中的位置顺序保存和访问的。 虽然关联容器的很多行为与顺序容器相同,但其不同之处反映了关键字的作用。 引言 两个主要的关联容器:map和set。 map中的元素是一些关键字-值对:关键字起到索引的作用,值则表示与索引相关联的数据。 set中每个元素只包含一个关键字:set支持高效的关键字查询操作-检查一个给定

weixin_46365033的博客 1861

Node-RED 数据处理实战手册:JSON、XML、CSV 的互转与排错

Node-RED 的数据处理,主要靠核心解析器里的一组节点完成:JSON、XML、CSV(还有 HTML、YAML),它们能把 msg 里的字符串、对象和表格数据互相转换。这篇文章不按"技巧清单"罗列,而是跟着一条数据在流程里走完全程:怎么从字符串变成对象,怎么在 XML 和 CSV 之间互转,字段对不上或坏消息出现时怎么办,最后再看怎么提速。 ## 数据入口:三步把 JSON 字符串解析成对象

gitblog_00964的博客 1058

C++ Primer 关联容器概述

关联容器不支持顺序容器的位置相关的操作,例如push_front或push_back。原团是关联容器中元素是根据关键字存储的,这些操作对关联容器没有意义。而且,关联容器也不支持构造函数或插入操作这些接受一个元素值和一个数量值的操作。除了与顺序容器相同的操作之外,关联容器还支持一些顺序容器不支持的操作和类型别名。此外,无序容器还提供一些用来调整哈希性能的操作。关联容器的迭代器都是双向的。

专注于C/C++编程语言的博客,如果读者对C/C++语言有任何需要咨询的可以私信联系! 789

C++ Primer(第五版)|练习题答案与解析(第十一章:关联容器)

C++ Primer(第五版)|练习题答案与解析(第十一章:关联容器) 本博客主要记录C++ Primer(第五版)中的练习题答案与解析。 参考:C++ Primer C++ Primer 练习题11.1 描述map和vector的不同。 vector是顺序容器,只能存放单一类型的数据。 map是关联的容器,存放一对key-value,值表示与索引相关联的数据,这两个数据可以是不同类型。(P...

qq_24739717的博客 803

C++ Primer 使用关联容器

专栏简介:本专栏主要面向C++初学者,解释C++的一些基本概念和基础语言特性,涉及C++标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级程序设计技术。希望对读者有帮助!

专注于C/C++编程语言的博客,如果读者对C/C++语言有任何需要咨询的可以私信联系! 953

《C++ Primer》 第十一章 关联容器

《C++ Primer》 第十一章 关联容器

qq_44901656的博客 733
上一篇: c++ Primer学习完后第十章泛型算法的小结
下一篇: c++ Primer学习完后第十三章拷贝控制的小结
黯黑丶丨枭雄
博客等级 码龄8年 2粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值