Erreur compilation
marlinne
Messages postés
24
Statut
Membre
-
dodo7263 Messages postés 719 Statut Membre -
dodo7263 Messages postés 719 Statut Membre -
Bonjour,
en fait j'ai défini un opérateur comme fonction amie d'une classe comme ceci :
.h
friend Vecteur3D operator+( const Vecteur3D& , const Vecteur3D& );
.cpp
Vecteur3D operator+(const Vecteur3D& v1, const Vecteur3D& v2){
Vecteur3D v3;
v3.x = v1.x + v2.x;
v3.y = v1.y + v2.y;
v3.z = v1.z + v2.z;
return v3;
}
et on me dit : [Error] C:\Program Files\C-Free Standard\samples\TP5_C++\Vecteur3D.cpp:31: 'Vecteur3D::operator +(const Vecteur3D &, const Vecteur3D &)' must take either zero or one argument
ce n'est pas logique tout ca ...quelqu'un pourrait m'aider ?!
Merci d'avance ..
en fait j'ai défini un opérateur comme fonction amie d'une classe comme ceci :
.h
friend Vecteur3D operator+( const Vecteur3D& , const Vecteur3D& );
.cpp
Vecteur3D operator+(const Vecteur3D& v1, const Vecteur3D& v2){
Vecteur3D v3;
v3.x = v1.x + v2.x;
v3.y = v1.y + v2.y;
v3.z = v1.z + v2.z;
return v3;
}
et on me dit : [Error] C:\Program Files\C-Free Standard\samples\TP5_C++\Vecteur3D.cpp:31: 'Vecteur3D::operator +(const Vecteur3D &, const Vecteur3D &)' must take either zero or one argument
ce n'est pas logique tout ca ...quelqu'un pourrait m'aider ?!
Merci d'avance ..
A voir également:
- Erreur compilation
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 4101 france tv - Forum Lecteurs et supports vidéo
- Erreur 4201 france tv ✓ - Forum Réseaux sociaux
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
1 réponse
Salut,
Souvent ce genre d'erreur est due au fait que tu déclares ta fonction comme une fonction membre de ta classe. Je m'explique :
L'erreur est que tu essaies de définir un membre
@++
SD
Souvent ce genre d'erreur est due au fait que tu déclares ta fonction comme une fonction membre de ta classe. Je m'explique :
L'erreur est que tu essaies de définir un membre
operator+prenant 2 arguments ce qui signifie qu'elle en prends 3 car tu as le paramètre implicite this. Une une fonction amie n'est pas une fonction membre de ta class.
@++
SD