Los archivos con extensión .hpp
se utilizan en C++ para definir encabezados, es decir, declaraciones de funciones, clases, constantes y otros elementos que se incluyen en archivos fuente. Su uso promueve la organización y reutilización del código al separar las declaraciones de las implementaciones. Aunque similares a los archivos .h
, la extensión .hpp
suele preferirse en proyectos modernos para indicar explícitamente que es un encabezado de C++.
Un archivo .hpp
actúa como un contenedor de definiciones y declaraciones reutilizables que otros archivos del proyecto pueden incluir. Normalmente, contiene:
Se incluyen en otros archivos con la directiva #include
y se combinan con los archivos fuente .cpp
, donde se implementan las funciones y métodos declarados.
Ejemplo básico de archivo .hpp
:
// ejemplo.hpp
#ifndef EJEMPLO_HPP
#define EJEMPLO_HPP
class Ejemplo {
public:
void mostrarMensaje();
};
#endif
Archivo fuente correspondiente:
// ejemplo.cpp
#include "ejemplo.hpp"
#include <iostream>
void Ejemplo::mostrarMensaje() {
std::cout << "¡Hola desde un archivo .hpp!" << std::endl;
}
1. Organización: Separan las declaraciones y la lógica, haciendo que el código sea más legible.
2. Reutilización: Las declaraciones pueden incluirse en múltiples archivos.
3. Modularidad: Facilita el mantenimiento del proyecto.
.hpp
e implementación en .cpp
// calculadora.hpp
#ifndef CALCULADORA_HPP
#define CALCULADORA_HPP
class Calculadora {
public:
int sumar(int a, int b);
};
#endif
// calculadora.cpp
#include "calculadora.hpp"
int Calculadora::sumar(int a, int b) {
return a + b;
}
// main.cpp
#include <iostream>
#include "calculadora.hpp"
int main() {
Calculadora calc;
std::cout << "Resultado: " << calc.sumar(3, 5) << std::endl;
return 0;
}
.hpp
// constantes.hpp
#ifndef CONSTANTES_HPP
#define CONSTANTES_HPP
const double PI = 3.14159;
#endif
// main.cpp
#include <iostream>
#include "constantes.hpp"
int main() {
std::cout << "El valor de PI es: " << PI << std::endl;
return 0;
}
Jorge García
Fullstack developer