heapfactory.h

来自「c++ 游戏编程中的内存管理源码示例」· C头文件 代码 · 共 41 行

H
41
字号


#ifndef HEAPFACTORY_H_
#define HEAPFACTORY_H_

#include "Heap.h"



class HeapFactory
{
public:
    static Heap * CreateHeap (const char * name);
    static Heap * CreateHeap (const char * name, const char * parent);
	static void DestroyHeap (Heap * pHeap);

	static Heap * GetDefaultHeap ();
    static void   PrintInfo ();

    static int  GetMemoryBookmark ();
    static void ReportMemoryLeaks (int nBookmark);
    static void ReportMemoryLeaks (int nBookmark1, int nBookmark2);

    
private:
	static Heap * GetRootHeap ();
    static Heap * FindHeap (const char * name);
    static Heap * CreateNewHeap (const char * name);
    static void PrintHeapTree(Heap * pHeap);

    static void Initialize();

    enum { MAXHEAPS = 512 };

    static Heap * s_pRootHeap;   
    static Heap * s_pDefaultHeap;   
    static Heap s_heaps[MAXHEAPS];
};


#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?