Pour les déclarations préliminaires, j´y vois surtout un interet à la compilation.
Systématiquement, je fais autant que possible pour avoir dans mon . h des déclarations préliminaires pour éviter d´avoir à inclure le fichier . h qui contient la déclaration.
Exemple:
Toto.h:
class KToto
{
public:
KToto() {}
};
Titi.h
class KToto;
class KTiti
{
protected:
KToto* m_pToto;
public:
KTiti();
};
Titi.cpp
- include " toto.h"
- include " titi.h"
KTiti:KTiti()
{
m_pToto = NULL;
}
Ainsi, tout les fichiers qui incluront titi.h ne seront pas recompilé si je modifie toto.h
Biensur, ca peut sembler n´avoir guere d´interet au début, mais je vous garantie qu´avec un projet qui commence à grossir on fini par y apprecier le temps de compilation gagné. Moi perso, mon projet prend 10min de compilation, heureusement, gràçe a cette technique je peux modifier mes . h sans tout recompiler a chaque fois. Mais bon, après c´est une question de philosophie...
Dino
The Zythum Project
http://www.zythum-project.com