Namespaces
Variants

std:: is_debugger_present

From cppreference.net
定义于头文件 <debugging>
bool is_debugger_present ( ) noexcept ;
(C++26 起)

尝试判断程序是否在调试器环境下执行。

此函数是 可替换的

目录

返回值

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

注释

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

功能测试 标准 功能
__cpp_lib_debugging 202311L (C++26) 调试支持库
202403L (C++26) 可替换的 std::is_debugger_present

示例

参见

(C++26)
调用时暂停正在运行的程序
(函数)
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