C++内存管理培训

课程介绍
     C++允许 (并且要求) 程序员自行操控 Memory Heap (i.e. Dynamic Allocation),这虽然带给程序员负担,从某个角度说却也是 C++ 的优势 (速度表现与空间自主)。为此,我们必须追求在此现实下如何使用 memory 以符合空间和速度上的最佳利益。本课程在低阶面全面介绍与 memory 相关之 C++ 语言构件,在高阶面深度剖析各大程序库 (STL, Loki, MFC, Boost) 的 pooled allocation 作法,并检讨它们的优缺点,作为可能的借鉴或改善方向。

课程对象
     C++开发工程师,编程培训

课程长度:2天

最新时间:定制课程(内训),人满开班(公开课)

传统的面对面授课方式。

 

课程大纲:

     模块一: malloc/free:這是 C/C++ 动态分配的根基和起点。此部分让学员充分了解其中的精巧繁复,使足以评估在此之上添加內存管理的必要性与可能方向。
           图解 malloc/free的相关结构,及內存分配过程中的变化。
           剖析 malloc/free的关键源代码
           以 Visual C++ 和 GCC 为剖析对象
    模块二:C++ 内存管理相关构件和重载方式
           new expression vs. operator new
           delete expression vs. operator delete
           array new and array delete
           placement new
           new /delete operator overloading
    模块三:实例分析 (含关键源码分析)
           Allocator in C++ Standard Library
           Allocator in Loki
           Allocator in MFC
           Allocator in Boost