¿Por qué declarar la clase que incluyó como archivo de encabezado?¿Por qué declarar la clase que incluyó como un archivo de encabezado?
#include "TreeCallObj.h"
#include "TreeDevObj.h"
#include "TreeDevCallObj.h"
class TreeCallObj; //what is the purpose of this line ?
class TreeDevObj; //what is the purpose of this line ?
class TreeDevCallObj; //what is the purpose of this line ?
class Apple
{
public:
...
private:
...
}
Parece que nos falta algo de contexto. ¿Posiblemente hay alguna referencia circular al archivo de encabezado, y las clases 'TreeWhateverObj' son referidas por un puntero solo en el archivo actual? Tal vez fue escrito por alguien a quien realmente le gustan sus definiciones avanzadas. El sufijo de nombres de clase en 'Obj' me parece una loca alerta de convención de codificación. – Rook
He leído que declarar que la clase puede mejorar el tiempo de compilación si el proyecto tarda 10 minutos en compilarse. No sé cuán cierto es esto y cuánto beneficio. – jdl
Suena bastante poco probable, pero también bastante sencillo de probar. Háganos saber cómo va ;-) – Rook