CMemoryState::DumpStatistics
打印一的内存统计信息从由 差异 成员函数加载的 CMemoryState 对象报告。
void DumpStatistics( ) const;
备注
报表,在 afxDump 设备打印,显示以下内容:
示例报表提供有关号(或属性)的信息:
可用块
普通块
CRT 块
忽略块
客户端块。
程序在任何时间使用的最大内存(以字节为单位)
程序当前使用的总内存(以字节为单位)
"可用块"是数字为时延迟释放的块。了,如果 afxMemDF 设置为 delayFreeMemDF。 有关更多信息,请参见 afxMemDF,在“MFC宏和Globals”一节。 请参见 调试堆上的块类型 有关这些块的更多信息类型。
示例
在 projnameApp.cpp应放置以下代码。 定义以下全局变量:
static CMemoryState oldstate, newstate, diffstate;
在 InitInstance 函数中,添加行:
oldstate.Checkpoint();
添加 ExitInstance 功能的处理程序并使用以下代码:
newstate.Checkpoint();
if (diffstate.Difference(oldstate, newstate))
{
TRACE(_T("Memory leaked\n"));
diffstate.DumpStatistics();
}
现在可以调试模式运行该程序发现 DumpStatistics 函数的输出。
要求
Header: afx.h