News · 资讯
聚合技术动态、框架版本与工程实践,帮你在学习路线之外保持对行业的敏感度。
> 为什么我们需要复制和交换习惯?
在Effective modern C++中Item 10: Prefer scoped enums to unscoped enum,调到要用有范围的enum
- const成员的初始化只能在构造函数初始化列表中进行
相信大家面试都逃不开设计模式话题,本节将阐述面试中的最常用的设计模式单例模式,从分类,线程安全,不基于C++11标准的角度与基于C++11标准的角度,有哪些解决
vector的数据安排以及操作方式,与array非常相似。两者的唯一差别在于空间的运用的灵活性,array是静态的,一旦配置了就不能改变,而 vector是动态
前面学到了hashtable,而这节是hashtable的容器适配器:unordered_map。
STL底层源码有下面几行,typedef与typename联用,这几个看着好复杂,究竟啥意思,我们今天一起来剖析!
set/multiset以rb_tree为底层结构,因此有元素自动排序特性。排序的依据是key,而set/multiset元素的value和key合二为一:va
在STL源码中有两段话,简单翻译后如下:
为何stack与queue不被称为容器呢?
目的:手写实现一个哈希表,采用拉链法构建,每个hashkey对应的是一个红黑树。
map/multimap 以rb_tree为底层结构,因此有元素自动排序特点,排序的依据是key。
源码对应的版本为gcc-4.9.1
本节使用上节Traits特性,研究iterator源码,来实现一个简单的iterator_category,同时对iterator的源码结构进行分析。
哈希表,是作为unordered_map与unordered_set等的底层容器,自gcc2.9后源码量大增!
deque是一种双向开口的分段连续线性空间简单理解为:双端队列,可以在头尾端进行元素的插入和删除。
源码剖析版本为gcc4.9.1。
- Variadic Templateshttps://github.com/Light-City/CPlusPlusThings/tree/master/cp
分为几种:#,##,\
总论: