valid number leetcode自动机Learning With Sakura 这是什么学习的日常进度记录。目前进度Week1-5: 学习C++并编写简单的STL

主要配合侯捷视频以及SGI STL编写。STL分为6个组件:allocator,iterator,container,functor,adaptor,algorithm。

allocator(simple): 内存分配。分配内存(allocate)的过程实际上就是operator::new的包装,operator::new就是malloc。BTW,没有必要使用侯捷推崇的内存池分配法,因为GNU C的malloc()本来就是在用内存池,侯捷没读过malloc()的源代码就随意发表观点。

deallocate的过程则包装了free()

construct: 调用构造函数::new()。

destruct: 使用了模板偏特化技巧,对于__IS_POD_TYPE()__true_type的(primitive),跳过析构过程;对于__IS_POD_TYPE()__false_type的(对象),则调用析构函数。