Salut.

J'ai une classe Vecteur et une classe Corps

voici les prototypes de leurs constructeurs:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Vecteur(unsigned int nombreComposantes, long double composante=0 );
Corps(const Vecteur &position=Vecteur(2), const Vecteur &vitesse=Vecteur(2), const Vecteur &acceleration=Vecteur(2));
Voici un bout de code pour que vous compreniez le problème:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Corps corps1(Vecteur(3), Vecteur(3) , Vecteur(3)); // Pas de problème
unsigned int a =3;
Corps corps2(Vecteur(a), Vecteur(3) , Vecteur(3));//Pas de problème
Corps corps3(Vecteur(a), Vecteur(3) , Vecteur(a));//Pas de problème
Corps corps4(Vecteur(3), Vecteur(a) , Vecteur(a));//Pas de problème
 
Corps corps5(Vecteur(a), Vecteur(a) , Vecteur(a));//Erreur "redefinition of 'Vecteur a' "  WTF ?
Corps corps6(Vecteur(a), Vecteur(a) , Vecteur(3)); //Idem
Vecteur v(a);
Corps corps7(Vecteur(a), Vecteur(a) , v); //Idem
Corps corps(v, v , v); //Pas de problème
Si on pouvait m'expliquer ce qui se passe parce que là je comprend rien.


Merci !