Uso de comprobaciones nativas en tiempo de ejecución

En un proyecto de C++ de Visual Studio, puede realizar runtime_checks de forma nativa para detectar errores en tiempo de ejecución, tales como:

  • Daños en el puntero de la pila

  • Saturación de matrices locales

  • Daños en la pila

  • Dependencias en variables locales sin inicializar

  • Pérdida de datos en una asignación a una variable corta.

    Si utiliza /RTC con una generación optimizada ( /O), obtendrá un error del compilador. Si utiliza un pragma runtime_checks en una versión optimizada, el pragma no surte ningún efecto.

    Cuando se depura un programa con las comprobaciones en tiempo de ejecución habilitadas, la acción predeterminada es la de que el programa se detenga y se interrumpa su depuración cuando se produzca un error en tiempo de ejecución. Puede cambiar este comportamiento predeterminado para cualquier comprobación en tiempo de ejecución. Para obtener más información, vea Administración de excepciones con el depurador.

    Los siguientes procedimientos describen cómo habilitar las comprobaciones en tiempo de ejecución nativas en una versión de depuración y cómo modificar el comportamiento de la comprobación en tiempo de ejecución nativa.

    Los demás temas de esta sección contienen información sobre:

  • Personalizar las comprobaciones en tiempo de ejecución con la biblioteca en tiempo de ejecución de C

Para habilitar las comprobaciones nativas en tiempo de ejecución en una versión de depuración

  • Utilice la opción /RTC y vincule la versión de depuración de una biblioteca C en tiempo de ejecución (/MDd, por ejemplo).

    Para establecer la opción en Visual Studio, consulte la sección Comentarios del artículo de referencia /RTC (comprobaciones de errores en tiempo de ejecución). Establezca el valor en la propiedad Comprobaciones en tiempo de ejecución básicas y no en la propiedad Comprobación de tipos más pequeños. No se recomienda la propiedad Comprobación de tipos más pequeños.

Para modificar el comportamiento de las comprobaciones nativas en tiempo de ejecución

  • Utilice la directiva pragma runtime_checks .