Espacios de nombres
Variantes

std::breakpoint

De cppreference.com
 
 
Biblioteca de servicios
Apoyo del lenguaje
Apoyo de tipos (tipos básicos, RTTI)
Macros de prueba de característica de la biblioteca (C++20)
Servicios de programa
Funciones variádicas
Apoyo de corrutinas (C++20)
Apoyo de contratos (C++26)
Comparación de tres vías (C++20)
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

 
 
Definido en el archivo de encabezado <debugging>
void breakpoint() noexcept;
(desde C++26)

Punto de interrupción incondicional: intenta detener temporalmente la ejecución del programa y transferir el control al depurador, independientemente de si se puede detectar la presencia de un depurador. El comportamiento de esta función está definido por la implementación.

Notas

El propósito de esta función es permitir el control de los puntos de interrupción en tiempo de ejecución más allá de lo que ofrece un depurador, sin provocar la finalización del programa. Por ejemplo: detener la ejecución cuando se detecta una condición poco frecuente y no crítica; permitir un control programático basado en condiciones complejas evaluadas en tiempo de ejecución; detener la ejecución ante una entrada del usuario para inspeccionar el contexto en programas interactivos sin necesidad de cambiar a la aplicación del depurador, etc.

Esta función estandariza muchas herramientas similares ya existentes: __builtin_debugtrap de LLVM, __debugbreak de la API de Win32, debugger_break de boost.test, assert(false), _asm { int 3 } (MSVC) y asm("int3") (GCC/clang) para arquitecturas x86, etc..

Macro de prueba de característica
__cpp_lib_debugging 202311L (C++26) Biblioteca de apoyo para depuración.
202403L (C++26) std::is_debugger_present reemplazable.

Ejemplo

Véase también

Comprueba si un programa se está ejecutando bajo el control de un depurador.
(función) [editar]
Llama a std::breakpoint si std::is_debugger_present devuelve true.
(función) [editar]

Enlaces externos

  armKEIL: Función intrínseca __breakpoint
  Portable Snippets: Aserciones y trampas de depuración
  EASTL: EASTL_DEBUG_BREAK
  Catch2: CATCH_TRAP y CATCH_BREAK_INTO_DEBUGGER
  Unreal Engine: DebugBreak
  JUCE: JUCE_BREAK_IN_DEBUGGER
  Estimado ImGui: IM_DEBUG_BREAK
  AWS C Common: aws_debug_break
Morty Proxy This is a proxified and sanitized view of the page, visit original site.