L'extension de fichier .hpp est couramment utilisée pour les Fichiers d'En-tête C++ (C++ Header Files), qui sont des composants essentiels dans les projets de programmation C++. Les fichiers d'en-tête contiennent typiquement les déclarations de fonctions, de classes, de variables et de constantes destinées à être partagées à travers de multiples fichiers source (.cpp). Ils ne contiennent généralement pas l'implémentation réelle (définitions) de ces éléments, bien que les fonctions 'inline' et les définitions de modèles (templates) soient souvent placées entièrement dans les fichiers d'en-tête. Le but principal de l'utilisation des fichiers d'en-tête est de permettre au compilateur de connaître la structure et l'interface du code avant qu'il ne rencontre l'implémentation réelle lors de la phase d'édition de liens (linking). Cette séparation entre déclaration et définition facilite la programmation modulaire, réduit les temps de compilation pour les grands projets et prévient les erreurs de redéfinition. Bien que la convention standard utilise souvent l'extension .h pour les en-têtes de style C ou les en-têtes C++ génériques, l'extension .hpp est fréquemment adoptée par les développeurs et certains systèmes de construction spécifiquement pour désigner un fichier d'en-tête exclusivement C++, parfois pour éviter des conflits ou des ambiguïtés lors du mélange de bases de code C et C++. Ce sont des fichiers texte brut lisibles par n'importe quel éditeur de texte, mais ils sont spécifiquement conçus pour être traités par le préprocesseur et le compilateur C++.