Ok, estoy escribiendo un código con una estructura [en C++], y no estoy seguro de si implementar la estructura en el archivo de encabezado o en el archivo fuente.¿Debo implementar una estructura con el constructor en el encabezado o el archivo de origen?
La estructura incluye un constructor:
struct Point
{
double x;
double y;
Point(double xCo, double yCo)
{
this->x = xCo;
this->y = yCo;
}
int comparePoint(Point point)
{
...
}
};
he escrito en el archivo de cabecera:
typedef struct Point point;
¿Es lo suficientemente bueno, o es un mal diseño? Como leo en algunos sitios web, una estructura generalmente se implementa en el archivo de encabezado,
pero en una tarea anterior que tuve [en C], el personal del curso nos proporcionó un archivo de encabezado que incluía declaración a la estructura y NO la implementación.
Vi otras preguntas aquí similares a esta, pero en realidad no respondieron mi pregunta.
Ese typedef no es necesario en C++. Es un modismo de C – Antimony
No es gran cosa. Una diferencia es que si coloca la implementación en el archivo de encabezado, entonces cualquier función debe estar en línea (están en línea por defecto en su código de muestra anterior). – john