Bonjour,
je suis face à un problème :
J'ai une classe A, qui fonctionne :
Et je veux l'utiliser dans mon main
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #ifndef A_HPP #define A_HPP //A.hpp class A { /*...*/ } #endif
Donc ca, super ca fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #include "A.hpp" int main() { /* ... */ return 0; }
Maintenant j'ai une deuxieme classe, B, qui a besoin de A :
Et ca ne marche pas, c'est normal, le main inclut déjà une fois A et la protection anti-multi-inclusions empêche d'inclure plus d'une fois.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 //A.hpp #include "A.hpp" class B { private : A m_ObjetA; };
La seule solution est d'enlever la protection, mais dés que je l'enleve, ca ne marche plus car dans mon programme la classe A est*en collision avec une autre classe et ca crée une inclusion en boucle ...
Comment je dois faire pour inclure A dans B sans casser la protection anti inclusions multiples ?
Merci
Partager