La extensión de archivo .hpp se utiliza comúnmente para archivos de cabecera de C++, los cuales son componentes esenciales en proyectos de programación en C++. Estos archivos contienen típicamente declaraciones de funciones, clases, variables y constantes destinadas a ser compartidas entre múltiples archivos fuente (.cpp). Por lo general, no contienen la implementación real (definiciones) de estos elementos, aunque las funciones en línea y las definiciones de plantillas a menudo se colocan completamente dentro de ellos. El propósito principal de utilizar archivos de cabecera es permitir que el compilador conozca la estructura y la interfaz del código antes de encontrar la implementación real durante la fase de enlace. Esta separación entre declaración y definición facilita la programación modular, reduce los tiempos de compilación en proyectos grandes y evita errores de redefinición. Aunque la convención estándar utiliza a menudo la extensión .h para cabeceras de estilo C o cabeceras genéricas de C++, la extensión .hpp es adoptada frecuentemente por desarrolladores y algunos sistemas de compilación específicamente para denotar un archivo de cabecera exclusivo de C++, a veces para evitar posibles conflictos o ambigüedades al mezclar bases de código de C y C++. Son archivos de texto plano legibles por cualquier editor de texto, pero están diseñados específicamente para ser procesados por el preprocesador y el compilador de C++.