42 votos

En las bibliotecas del alza C++, por qué hay una extensión ".ipp" en algunos archivos de encabezado

En las bibliotecas del alza C++, ¿por qué hay una extensión ".ipp" en algunos archivos de encabezado?

Parece que son archivos incluidos en el archivo ".hpp" del mismo nombre.

¿Es esta Convención común fuera de refuerzo?

¿Cuál es la justificación para tener un tipo de archivo especial?

47voto

Anonymous Puntos 11017

Explicación de uno de los gurús de la plantilla:

Si desea dividir su plantilla de fuentes en la interfaz y aplicación (hay un montón de buenas razones para hacerlo, incluyendo el control de la creación de instancias), no puedes usar el mismo nombre (foo.hpp) dos veces, y foo.cpp no sería apropiado para cualquiera de los dos. foo.ipp claramente delinea el archivo como un archivo de implementación de la intención de ser #incluido en foo.la hpp.

14voto

James Curran Puntos 55356

Creo que "ipp" soportes de archivo de "implementación". es decir, que poseen realmente el código (para las funciones en línea y plantillas) en lugar de declaración sólo (que se encuentran en el encabezado--. H o. HPP - archivos)

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X