|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : février 2013 Messages : 5 ![]() |
Bonjour à tous!
Je débute en POO et je ne comprend pas vraiment ce qui cloche dans mon programme. Le but est de créer une classe Matrice et de définir des opérations dessus. Problème, mon compilateur me renvoie ceci: matrice.cc:6:7: erreur: redefinition of ‘class Matrice’ matrice.h:4:7: erreur: previous definition of ‘class Matrice’ j'ai cru comprendre que l'inclusion multiple était protégée grâce aux directives de préprocesseur, mais même avec ça ne marche pas... Je suppose que le problème vient des constructeurs, mais je ne vois pas où. Si vous avez des suggestions... Voici mes fichiers: fichier 'matrice.h' Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
|
Membre émérite
![]() Inscription : février 2009 Messages : 568 ![]() |
Dans le cpp tu ne dois pas remettre la classe en entier. Juste les méthodes :
Code :
|
||
|
|
00
|
|
|
#3 | ||||||
|
Invité de passage
![]() Inscription : février 2013 Messages : 5 ![]() |
Merci pour cette réponse!
Après quelques corrections et un fichier de test pour afficher une matrice, le compilateur me lance maintenant la liste d'erreurs suivantes: g++ matrice.cc matrice.cc test_matrice.cc -o matrice test_matrice.cc: In function ‘int main()’: test_matrice.cc:9:12: attention : extended initializer lists only available with -std=c++0x or -std=gnu++0x [enabled by default] test_matrice.cc:9:23: attention : extended initializer lists only available with -std=c++0x or -std=gnu++0x [enabled by default] test_matrice.cc:9:34: attention : extended initializer lists only available with -std=c++0x or -std=gnu++0x [enabled by default] test_matrice.cc:9:45: erreur: no matching function for call to ‘Matrice::Matrice(<brace-enclosed initializer list>, <brace-enclosed initializer list>, <brace-enclosed initializer list>)’ test_matrice.cc:9:45: note: candidates are: matrice.h:8:3: note: Matrice::Matrice(double*) matrice.h:8:3: note: candidate expects 1 argument, 3 provided matrice.h:7:3: note: Matrice::Matrice(double*, double*, double*) matrice.h:7:3: note: no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘double*’ matrice.h:4:7: note: Matrice::Matrice(const Matrice&) matrice.h:4:7: note: candidate expects 1 argument, 3 provided Que signifient ces erreurs, s'il vous plaît? Mes fichiers: 'test_matrice.cc' Code :
Code :
Code :
|
||||||
|
|
00
|
|
|
#4 | ||
|
Membre émérite
![]() Inscription : février 2009 Messages : 568 ![]() |
Salut,
C'est parce que tu dois faire comme ça : Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : février 2013 Messages : 5 ![]() |
Ah génial ça marche parfaitement!
Merci beaucoup! |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Inscription : novembre 2004 Messages : 2 073 ![]() |
Merci de mettre le fil en "résolu".
__________________
VDS "The C++ Standard Library" (Josuttis) -> 30 € |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com