本地运行时检查自定义

使用 /RTC (运行时检查)编译或使用 runtime_checks 杂注时,C 运行时库提供内置运行时检查。 在某些情况下,可能需要自定义运行时检查:

  • 将运行时检查消息路由到不是默认的文件或目标。

  • 为第三方调试器下的运行时检查消息指定输出目标。

  • 报告使用 C 运行时库的发布版本编译的程序的运行时检查消息。 库的发布版本不会使用 _CrtDbgReportW 来报告运行时错误。 而是为每个运行时错误显示 “断言 ”对话框。

    若要自定义运行时错误检查,可以:

  • 编写运行时错误报告函数。 有关详细信息,请参阅 如何:编写 Run-Time 错误报告函数

  • 自定义错误消息目标。

  • 查询有关运行时检查错误的信息。

自定义错误消息目标

如果使用 _CrtDbgReportW 来报告错误,可以使用 _CrtSetReportMode 来指定错误消息的目标。

如果使用自定义报告函数,请使用_RTC_SetErrorType将错误与报告类型相关联。

查询有关运行时检查的信息

_RTC_NumErrors 返回运行时错误检查检测到的错误类型数。 若要获取每个错误的简要说明,可以从 0 循环到返回值,并在每次循环时将迭代值传递给 _RTC_NumErrors_RTC_GetErrDesc。 有关详细信息,请参阅 _RTC_NumErrors_RTC_GetErrDesc