Bonjour
Je d�bute en C++ alors je ne sais pas si c'est la bonne mani�re de faire les choses. Je voudrais cr�er un .h pour chaque classe, Complex et Matrix. J'ai donc deux fichiers :
complex.h et matrix.h . Ensuite, j'ai le contenu des m�thodes de chacune des classes dans deux fichiers : complex.cpp et matrix.cpp
Le probl�me, c'est que ma classe Matrix contient un attribut de type Complex. Et l�, �a plante. En clair, dans mon fichier Matrix.h, j'ai quelque chose comme �a:
Je programme avec Visual C++ Pro 2005. Et l'erreur � la compilation est :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 class Matrix { typedef Complex *line_t ; // LIGNE 12 line_t *lines ; // LIGNE 13 // ... }
Si au d�but de Matrix.h , je fais :1>matrix.cpp
matrix.h(12) : error C2143: syntax error : missing ';' before '*'
matrix.h(12) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
matrix.h(12) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
matrix.h(13) : error C2143: syntax error : missing ';' before '*'
matrix.h(13) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
matrix.h(13) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>main.cpp
j'ai d'autres erreurs, notamment une red�finition de ma classe... puisque j'inclus complex.h dans complex.cpp.
Code : S�lectionner tout - Visualiser dans une fen�tre � part #include "complex.h"
Bref, je ne vois pas comment faire. Une solution serait de mettre la d�finition des deux classes dans un m�me ent�te .h mais je pr�f�re un fichier par classe.
Nas'
Partager