|
|
|
|
| |
|
  课程简介
|
|
Memory management 一向是 C++ programmer 的痛点,主要因为 C++ 不提供 Garbage Collection。这是效能顾虑下的一种取舍。现实如此,我们必须追求在如此的现实下如何又快又好地运用 memory,使符合速度和空间的最大利益。本课程在低阶上全面介绍 C++ 提供的各种 memory 管理工具(各种 overloadable operators),在高阶上深刻学习各大链接库(包括 STL, Loki, MFC, Boost)的 Pooled Allocation 的作法,并提供它们的高度可移植版(侯捷改编)。
教材: 自编讲义,PDF 格式。
|
| |
|
  课程纲要
|
|
| . 第1阶段: | 课程简介、相关读物评介、new expression vs. operator new,delete expression vs. operator delete,array new and array delete,placement new,about overhead,examples for operator new/delete overloading. |
| . 第2阶段: | std::auto_ptr, boost::shared_ptr, How to inherit operator new/delete, Introduction to std::allocator |
| . 第3阶段: | SGI STL allocator的设计概念 |
| . 第4阶段: | SGI STL allocator的实作技术与源码剖析 |
| . 第5阶段: | loki allocator的设计概念 |
| . 第6阶段: | loki allocator的实作技术与源码剖析 |
| . 第7阶段: | MFC allocator的设计概念与实作技术 |
| . 第8阶段: | Boost.Pool的设计概念与实作技术 |
|
|
|