C++STL
那些年那些事那些人
很多事情不是看到了希望才去坚持,而是坚持了才会看到希望;在人生的十字口,一定要慎重选择,一旦选择了就不要后悔;最后欢迎志同道合者,一起交流学习。
展开
-
3.C++STL源码理解
C++STL源码理解第一部分:(1)STL六大组件及功能(3)STL特性:第二部分:空间配置器(1)STL allocator:(2) construct函数(3)空间配置器alloc(4)第二配置器:一个内存池、16个free-list;(5)三个复制填充函数第三部分:迭代器与traits编程技巧1.iterator是一种smart pointer2.偏特化(类模板的部分具体化)3.traits机制:特征萃取机4.五种iterator_category5.iterator_traits第四部分:序列式容器原创 2020-07-25 17:13:51 · 3534 阅读 · 0 评论 -
2.STL之::operator new()的理解
STL之operator new的理解1.new运算符和operator new()2.new和operator new之间的关系3.如何限制对象只能建立在堆上或者栈上3.1建立类只能建立在堆上(设置析构函数为Protected)3.2只能建立在栈上(重载new函数设为私有)1.new运算符和operator new()new:指我们在C++里通常用到的运算符,比如A* a = new A; 对于new来说,有new和::new之分,前者位于stdoperator new():指对new的重原创 2020-06-23 21:55:50 · 15839 阅读 · 1 评论 -
1.STL常用容体分析总结
STL源码1.Vector实现2.STL之list实现3.set实现:3.map实现1.Vector实现1.vector遍历删除注意事项:vector.erase()后,原vector迭代器就失效了,erase()函数会返回新的迭代器;vector.erase()主要操作就是将后半部分的有效元素向前拷贝,并且将后面的空间的无效元素希构,并更新_Mylast变量;#include<io...原创 2020-04-04 20:15:44 · 9595 阅读 · 1 评论