Bonjour tout le monde,
j'ai un probl�me tout b�te mais je ne parviens pas � trouver une solution �l�gante. C'est pourquoi je m'en remet � vous
Soit un programme P qui utilise une biblioth�que statique L1.lib.
La lib L1 d�finit une classe CL1 dans le fichier CL1.h.
La class CL1 utilise une classe CL2 d�finie dans CL2.h et appartenant � la lib CL2.lib.
Voici � quoi pourrait ressembler CL1.h
Le probl�me qui se pose ici, c'est que dans mon programme P, lorsque je vais inclure CL1.h, il va m'inclure �galement CL2.h.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 #include "CL2.h" class CL1 { // des fonctions, constructeurs, destructeurs, etc. private: CL2 monCL2; //une instance de CL2 };
Or, ce que je voudrais, c'est que lorsque j'ai compil� CL1, je n'ai plus besoin du tout de CL2 pour P. Id�alement, j'aimerais que P n'ait m�me pas � ce soucier de l'exitence de CL2.
Ce qui m'intrigue, c'est qu'en essayant de r�soudre ce probl�me, on se retrouve confront� � des aberrations. Par exemple, si je modifie CL1.h ainsi:
�a ne me convient pas car si j'avais d�clar� CL2 en variable membre par valeur, c'est qu'il y a une raison.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 class CL2; class CL1 { // des fonctions, constructeurs, destructeurs, etc. private: CL2* pMonCL2; //un pointeur sur une instance de CL2 };
En fait donc, j'aimerais avoir quelques conseils sur la cr�ation de lib statique, afin que l'utilisation de cette lib soit la plus simple possible.
![]()
Partager