Convenciones de la biblioteca de C++

La biblioteca de C++ obedece mucho a las mismas convenciones que la biblioteca de c estándar, más algunos descritos aquí.

Una implementación tiene alguna latitud en cómo declara tipos y funciones de la biblioteca de C++:

  • Los nombres de funciones de la biblioteca de c estándar pueden tener extern # " C++” o vinculación extern “c”.Incluya el encabezado de C estándar de adecuada en lugar de una entidad de la biblioteca en línea.

  • Un nombre de función miembro en una clase de biblioteca puede tener firmas adicionales de la función a los mostrados en este documento.Puede asegurarse de que una llamada de función descrita aquí se comporta, pero no puede tomar confiable a la dirección de una función miembro de biblioteca.(El tipo se puede no ser la esperada.)

  • Una clase de biblioteca puede tener clases base (no virtual) indocumentadas.Una clase documentada como derivada de otra puede, de hecho, ser derivada de esa clase a través de otras clases indocumentadas.

  • Un tipo definido como sinónimo de algún tipo entero puede ser igual que distintos tipos enteros.

  • Un tipo de máscara de bits se puede implementar como un tipo entero o una enumeración.En cualquier caso, puede realizar operaciones bit a bit (como AND y OR) en valores del mismo tipo de máscara de bits.Los elementosA yB un tipo de máscara de bits son valores distintos de cero de modo queA yB son cero.

  • Una función de biblioteca que no tiene una especificación de excepciones puede producir una excepción arbitraria, a menos que su definición limite claramente por tanto.

por otra parte, hay algunas restricciones:

  • La biblioteca de c estándar de no utiliza ninguna macro de enmascarado.Sólo se reservan las firmas de la función específica, no los nombres de las funciones propios.

  • un nombre de función de biblioteca fuera de una clase no tendrá adicional, indocumentado, las firmas de la función.Puede tomar confiable a su dirección.

  • Las clases base y virtuales descrita las funciones miembro tan son de confianza virtuales, mientras que las descritas como no virtual son de confianza no virtual.

  • Dos tipos definidos por la biblioteca de C++ siempre son diferentes a menos que este documento explícitamente sugiera de otra manera.

  • Las funciones proporcionadas por la biblioteca, incluidas las versiones predeterminadas de funciones reemplazables, pueden producir como máximo esas excepciones mostradas en cualquier especificación de excepciones.Cualquier destructores proporcionados por la biblioteca producen excepciones.Las funciones de la biblioteca de c estándar pueden propagar una excepción, como cuando qsort llama a una función de comparación que inicia una excepción, pero no producen de otra manera excepciones.

Vea también

Referencia

Información general de la biblioteca estándar de C++

Seguridad para subprocesos de la biblioteca estándar de C++