close
Espacios de nombres
Variantes

Conformidad

De cppreference.com

La "conformidad" tiene una triple definición:

  • Programa estrictamente conforme - utiliza únicamente construcciones de lenguaje bien definidas, es decir, construcciones con un único comportamiento. Excluye el comportamiento no especificado, indefinido o definido por la implementación, y no excede ningún límite mínimo de implementación.
  • Programa conforme - aceptable para una implementación conforme.
  • Implementación conforme - Una implementación hospedada conforme aceptará cualquier programa estrictamente conforme. Una implementación autónoma conforme aceptará cualquier programa estrictamente conforme en el que el uso de las funciones especificadas en la cláusula de la biblioteca (cláusula 7) se limite al contenido de los encabezados estándar <float.h>, <iso646.h>, <limits.h>, <stdalign.h>, <stdarg.h>, <stdbool.h>, <stddef.h>, <stdint.h>, y <stdnoreturn.h>. Una implementación conforme puede tener extensiones (incluyendo funciones de biblioteca adicionales), siempre y cuando no alteren el comportamiento de ningún programa estrictamente conforme.

Explicación

El estándar no define ningún límite mínimo de implementación para las unidades de traducción. Un entorno hospedado tiene un sistema operativo; un entorno autónomo no. Un programa que se ejecuta en un entorno hospedado puede utilizar todas las funciones descritas en la cláusula de biblioteca (cláusula 7); un programa que se ejecuta en un entorno autónomo puede utilizar un subconjunto de funciones de biblioteca requeridas por la cláusula 4.

Referencias

  • Standard C11 (ISO/IEC 9899:2011):
  • 4 Conformance (p: 8-9)
  • Standard C99 (ISO/IEC 9899:1999):
  • 4 Conformance (p: 7-8)
  • Standard C89/C90 (ISO/IEC 9899:1990):
  • 1.7 Compliance

Véase también

Documentación de C++ para Implementación hospedada y autónoma