函数对象适配器主要用于对函数、函数对象进行适配(转换),使得原本不符合接口需求的函数、函数对象变得符合要求。比如:我们有一个 2 个参数的函数对象,但是我们需要...
STL 中的迭代器有以下几种:输入迭代器、输出迭代器、正向迭代器、双向迭代器、随机访问迭代器。1. 输入迭代器:一次只能读取一个元素,只能向前移动,支持:++、...
什么是链表?链表是由一些列节点组成的,每一个阶段包含数据域、指针域,每个节点的内存都是独立,使用的是非连续的内存。 链表分为:单向链表、双向链表、循环链表单向链...
array 是一个数组,对 C-style 的数组的封装(int arr[] = {10, 20, 30}) 为什么C++要对 C 风格的数组进行封装?而不是直...
vector 容器叫做动态数组,其大小可以随着元素的增长而变化,创建得时候不需要指定大小。vector 容器和 array 容器一样使用一块连续的内存空间来存储...
队列 : 先进先出,按照我们添加元素的顺序来决定优先级队列 : 并不是按照元素的添加顺序来访问,而是按照优先级来访问
unordered_map 和 unordered_multimap 容器的内部和 map 容器一样,存储的都是键值对, 以 pair 类型存储。 unorde...
C++ 中的 using 用法有很多种,我们下面剖析下常见几种场景: using 关键字给类型增加别名 using 用于继承中的同名函数 using 关键字用于...
1. 多继承的名字冲突问题 多继承:一个类可以同时继承多个类,但是多继承很容易产生同名冲突(函数、变量)。 对于上述情况,如果由于多继承出现的名字冲突问题,需要...
1. 异常对象的保存 异常对象保存,指的是当异常发生时,我们将其捕获,但是并不马上处理,而是将其存储起来。这样的话,我们可以在程序最后、或者其他的并行任务的进程...
1. 委托构造函数的使用场景 缺点:每个构造函数都有重复的成员变量的初始化语句 初始化交给一个普通成员函数,该成员函数无法使用简洁的初始化列表语句,需要额外给类...

终身学习者 | 知识桥接者
我是一名 80 后,写过多年代码,讲过很多年课,积累了丰富经验。如今,想把这些经验整理,通过我的博客分享给大家。
冀公网安备13050302001966号