使用 /RTC (运行时检查)编译或使用 runtime_checks 杂注时,C 运行时库提供内置运行时检查。 在某些情况下,可能需要自定义运行时检查:
将运行时检查消息路由到不是默认的文件或目标。
为第三方调试器下的运行时检查消息指定输出目标。
报告使用 C 运行时库的发布版本编译的程序的运行时检查消息。 库的发布版本不会使用
_CrtDbgReportW来报告运行时错误。 而是为每个运行时错误显示 “断言 ”对话框。若要自定义运行时错误检查,可以:
编写运行时错误报告函数。 有关详细信息,请参阅 如何:编写 Run-Time 错误报告函数。
自定义错误消息目标。
查询有关运行时检查错误的信息。
自定义错误消息目标
如果使用 _CrtDbgReportW 来报告错误,可以使用 _CrtSetReportMode 来指定错误消息的目标。
如果使用自定义报告函数,请使用_RTC_SetErrorType将错误与报告类型相关联。
查询有关运行时检查的信息
_RTC_NumErrors 返回运行时错误检查检测到的错误类型数。 若要获取每个错误的简要说明,可以从 0 循环到返回值,并在每次循环时将迭代值传递给 _RTC_NumErrors 和 _RTC_GetErrDesc。 有关详细信息,请参阅 _RTC_NumErrors 和 _RTC_GetErrDesc。