开发学院软件开发VC MFC教程(10)-- 内存分配方式和调试机制 阅读

MFC教程(10)-- 内存分配方式和调试机制

 2010-03-25 20:35:03 来源:WEB开发网   
核心提示:调试手段MFC应用程序可以使用C运行库的调试手段,也可以使用MFC提供的调试手段,MFC教程(10)-- 内存分配方式和调试机制(3),两种调试手段分别论述如下,C运行库提供和支持的调试功能C运行库提供和支持的调试功能如下:调试信息报告函数用来报告应用程序的调试版本运行时的警告和出错信息,如果有漏洞则输出所有分配的对象

调试手段

MFC应用程序可以使用C运行库的调试手段,也可以使用MFC提供的调试手段。两种调试手段分别论述如下。

C运行库提供和支持的调试功能

C运行库提供和支持的调试功能如下:

调试信息报告函数

用来报告应用程序的调试版本运行时的警告和出错信息。包括:

_CrtDbgReport 用来报告调试信息;

_CrtSetReportMode 设置是否警告、出错或者断言信息;

_CrtSetReportFile 设置是否把调试信息写入到一个文件。

条件验证或者断言宏:

断言宏主要有:

assert 检验某个条件是否满足,不满足终止程序执行。

验证函数主要有:

_CrtIsValidHeapPointer 验证某个指针是否在本地堆中;

_CrtIsValidPointer 验证指定范围的内存是否可以读写;

_CrtIsMemoryBlock 验证某个内存块是否在本地堆中。

内存(堆)调试:---www.bianceng.cn

malloc_dbg 分配内存时保存有关内存分配的信息,如在什么文件、哪一行分配的内存等。有一系列用来提供内存诊断的函数:

_CrtMemCheckpoint 保存内存快照在一个_CrtMemState结构中;

_CrtMemDifference 比较两个_CrtMemState;

_CrtMemDumpStatistics 转储输出一_CrtMemState结构的内容;

_CrtMemDumpAllObjectsSince 输出上次快照或程序开始执行以来在堆中分配的所有对象的信息;

_CrtDumpMemoryLeaks 检测程序执行以来的内存漏洞,如果有漏洞则输出所有分配的对象。

MFC提供的调试手段

MFC在C运行库提供和支持的调试功能基础上,设计了一些类、函数等来协助调试。

MFC的TRACE、ASSERT

上一页  1 2 3 4 5 6  下一页

Tags:MFC 教程 内存

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接