读完C++ primary 容器相关章节,有必要总结一下容器的要点,一图说明。

其中的问题,以下是我的一些想法,欢迎交流。

问题1. STL源码剖析 · vector

问题2. STL源码剖析 · RB-tree

问题3:unordered_map桶增长规律

问题4:

#include<iostream>
#include<vector>
#include<map>
using namespace std; int main()
{
cout << "iterator 访问vector " << endl;
vector<int> vec = {, , , , , , , , };
vector<int>::iterator it = vec.begin();
for(; it != vec.end(); ++it)
cout << *it << " "; cout << "\niterator 访问map " << endl;
map<string, string> mp = {{"chen", "zhang"}, {"yoci", "han"}};
auto p = mp.begin();
for(; p != mp.end(); ++p)
cout << p->first << " " << p->second << endl; cout << "\niterator 访问复合map " << endl;
map<string, vector<string>> mmp;
for(int i=; i<; i++)
{
mmp.insert(pair<string, vector<string>>(to_string(i), {to_string(i*i), "这是测试时数据"}));
}
auto mmp_it = mmp.begin();
for(; mmp_it != mmp.end(); ++mmp_it)
{
cout << mmp_it->first << " - ";
for(auto str : mmp_it->second)
cout << str << " ";
cout << endl;
} return ;
}

迭代器访问常用vector、map


概念性理解看这里:https://blog.csdn.net/u013719339/article/details/80615217

C++ 容器一图以蔽之的更多相关文章

  1. [19/03/26-星期二] 容器_Map(图、键值对、映射)接口之HashMap(散列映射)&TreeMap(树映射)

    一.概念&方法 现实生活中,我们经常需要成对存储某些信息.比如,我们使用的微信,一个手机号只能对应一个微信账户,这就是一种成对存储的关系. Map就是用来存储“键(key)-值(value) ...

  2. vector容器建图

    #pragma comment(linker, "/STACK:1024000000,1024000000") #include"stdio.h" #inclu ...

  3. 详解web容器 - Jetty与Tomcat孰强孰弱

    Jetty 基本架构 Jetty目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器.它有一个基本数据模型,这个数据模型就是 Handler(处理器 ...

  4. java容器(java编程思想第四版-读书笔记)

    容器类库图    List(interface) 次序是List最重要的特点:它保证维护元素特定的顺序.List为Collection添加了许多方法,使得能够向List中间插入与移除元素.(这只推荐L ...

  5. STL源码剖析读书笔记--第四章--序列式容器

    1.什么是序列式容器?什么是关联式容器? 书上给出的解释是,序列式容器中的元素是可序的(可理解为可以按序索引,不管这个索引是像数组一样的随机索引,还是像链表一样的顺序索引),但是元素值在索引顺序的方向 ...

  6. td内容自动换行 ,td超过宽度显示点点点… , td 使用 overflow:hidden 无效,英文 数字 不换行 撑破div容器

    我们可以先给表格 table上 固定一个宽度 不让表格撑破 width: 747px; table-layout:fixed; 然后我们在td上加上如下样式 style="width:100 ...

  7. 英文 数字 不换行 撑破div容器

    我们在div等容器 中,如果规定了宽度,并且里面的内容不是全英文或者全数字是OK的,会自动换行,但是如果是全数字或者是全英文,则会撑破容器,如图     解决方法 word-wrap:break-wo ...

  8. Java——容器类库框架浅析

    前言 通常,我们总是在程序运行过程中才获得一些条件去创建对象,这些动态创建的对象就需要使用一些方式去保存.我们可以使用数组去存储,但是需要注意数组的尺寸一旦定义便不可修改,而我们并不知道程序在运行过程 ...

  9. 三小时学会Kubernetes:容器编排详细指南

    三小时学会Kubernetes:容器编排详细指南 如果谁都可以在三个小时内学会Kubernetes,银行为何要为这么简单的东西付一大笔钱? 如果你心存疑虑,我建议你不妨跟着我试一试!在完成本文的学习后 ...

随机推荐

  1. java 虚拟机类加载 及内存结构

    http://www.jb51.net/article/105920.htm https://www.cnblogs.com/Qian123/p/5707562.html Java类加载全过程 一个j ...

  2. Python3 中codecs进行文件的读取

    简单的概念与说明 编码(动词):按照某种规则(这个规则称为:编码(名词))将"文本"转换为"字节流".而在python 3中则表示:unicode变成str 解 ...

  3. Java基础教程:IDEA单元测试

    Java基础教程:IDEA单元测试 环境配置 使用idea IDE 进行单元测试,首先需要安装JUnit 插件. 安装JUnit插件步骤 File-->settings-->Plguins ...

  4. Flutter 流式布局列表实例+上拉加载

    页面变化的几种方式: 一.StatefulWidget的setState形式 先声明两个变量. ; List<Map> list = []; 写了一个方法,获取数据: void _getH ...

  5. win10 安装MySQL过程和遇到的坑

    环境:win10系统,MySQL5.7.18 “mysql-5.7.18-winx64.msi” 首先是要运行mysql-5.7.18-winx64.msi,选择安装在C盘(可自定义安装) 第一步 打 ...

  6. mysql中mysql数据库丢失报错Can't open the mysql.plugin table

    180720 10:00:54 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it. 18 ...

  7. iOS核心动画高级技巧 - 8

    iOS核心动画高级技巧 - 1 iOS核心动画高级技巧 - 2 iOS核心动画高级技巧 - 3 iOS核心动画高级技巧 - 4 iOS核心动画高级技巧 - 5 iOS核心动画高级技巧 - 6 iOS核 ...

  8. SpringBoot(三)手写starter pom自动配置

    思想:主要是EnableAutoConfiguration在启动的时候会扫描spring.factories并加载 1在resource下面新建META-INF/spring.factories 2在 ...

  9. 正则与re模块

    一.正则表达式 在线测试工具 http://tool.chinaz.com/regex/ 1.字符组 ​ 在同一个位置可能出现的各种字符组成一个字符组,在正则表达中用[ ]表示 ​ 一个正则就是一条匹 ...

  10. pythn print格式化输出:%s与%d

    pythn print格式化输出. %r 用来做 debug 比较好,因为它会显示变量的原始数据(raw data),而其它的符号则是用来向用户显示输出的. 1. 打印字符串 print (" ...