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
的(对象),则调用析构函数。
暂无评论