命名空间
变体
操作

std::is_debugger_present

来自 cppreference.cn
< cpp‎ | utility
定义于头文件 <debugging>
bool is_debugger_present() noexcept;
(自 C++26 起)

尝试确定程序是否在调试器存在的情况下执行。

此函数是可替换的

目录

[编辑] 返回值

默认版本返回实现定义的值,该值通常表示程序是否在调试器下执行。

[编辑] 注解

此函数的目的是允许打印额外的输出以帮助诊断问题、执行额外的测试代码、显示额外的用户界面以帮助调试等。

特性测试 Std 特性
__cpp_lib_debugging 202311L (C++26) 调试支持库
202403L (C++26) 可替换的 std::is_debugger_present

[编辑] 示例

[编辑] 参见

当调用时暂停正在运行的程序
(函数) [编辑]
如果 std::is_debugger_present 返回 true,则调用 std::breakpoint
(函数) [编辑]

[编辑] 外部链接

is_debugger_present 标准化了许多类似的现有设施,例如:

1.  under_debugger 来自 boost.test
2.  IsDebuggerPresent() 来自 Win32 API
3.  isDebuggerActive 来自 Catch2
4.  IsDebuggerPresent 来自 Unreal Engine