2 pièce(s) jointe(s)
Problemes de switch et de déclarations.
Bonjour.
je teste quelques classe pour lesquelles laurent gomila m'a gracieusement aidé, mais je rencontre quelques problèmes au moment de les tester... entre autre:
Citation:
Envoyé par débogueur
------ Début de la génération : Projet : Moteur physique, Configuration : Debug Win32 ------
Compilation en cours...
convert.cpp
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\convert.cpp(45) : error C2065: 'point1' : identificateur non déclaré
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\convert.cpp(45) : error C3861: 'point2' : identificateur introuvable
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\convert.cpp(49) : error C2228: la partie gauche de '.GetCoord' doit avoir un class/struct/union
le type est ''unknown-type''
Points.cpp
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(10) : error C2065: 'theta' : identificateur non déclaré
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(15) : error C2572: 'Carth::GetCoord' : redéfinition du paramètre par défaut : paramètre 1
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.h(27) : voir la déclaration de 'Carth::GetCoord'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(17) : error C2061: erreur de syntaxe : identificateur 'num'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(17) : error C2143: erreur de syntaxe : absence de ';' avant '{'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(18) : error C2046: instruction case non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(20) : error C2043: instruction break non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur
[...]
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(27) : error C2047: instruction default non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(28) : error C2065: 'NULL' : identificateur non déclaré
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(42) : error C2065: 'M_PI_2' : identificateur non déclaré
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(43) : error C2143: erreur de syntaxe : absence de ';' avant '}'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(45) : error C2572: 'Cylin::GetCoord' : redéfinition du paramètre par défaut : paramètre 1
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.h(51) : voir la déclaration de 'Cylin::GetCoord'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(47) : error C2061: erreur de syntaxe : identificateur 'num'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(47) : error C2143: erreur de syntaxe : absence de ';' avant '{'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(48) : error C2046: instruction case non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur
[...]
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(57) : error C2047: instruction default non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(73) : error C2143: erreur de syntaxe : absence de ';' avant '}'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(75) : error C2572: 'Spher::GetCoord' : redéfinition du paramètre par défaut : paramètre 1
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.h(75) : voir la déclaration de 'Spher::GetCoord'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(77) : error C2061: erreur de syntaxe : identificateur 'num'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(77) : error C2143: erreur de syntaxe : absence de ';' avant '{'
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(78) : error C2046: instruction case non conforme
d:\dossiers & prog\programation\c\c++\init\moteur physique\moteur physique\points.cpp(80) : error C2043: instruction break non conforme
[...]
physique\points.cpp(87) : error C2047: instruction default non conforme
Génération de code en cours...
Le journal de génération a été enregistré à l'emplacement "file://d:\Dossiers & prog\programation\C\C++\init\Moteur physique\Moteur physique\Debug\BuildLog.htm"
Moteur physique - 38 erreur(s), 0 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
(j'ai coupé avec des "[..]" lorsque c'étais répétitif)
le code de convert.ccp est:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| #include<iostream>
#include<string>
#include"points.h"
using namespace std;
int main(int argc,char *argv[])
{
int choix=NULL;
cout<<"A partir quel systeme ? \n1:carthesien \n2:cylindrique \n3:spherique"<<endl;
cin>>choix;
string coords[3];
coords[0]="X Y Z";
coords[1]="r Theta Z";
coords[2]="r Theta Phi";
double inco[3];
cout<<endl<<"Entrez les coordonnées "<<coords[choix-1]<<endl;
for(int i=0;i<3;i++)
cin>>inco[i];
switch(choix)
{
case 1:
{Carth point1(inco[0],inco[1],inco[2]);}
break;
case 2:
{Cylin point1(inco[0],inco[1],inco[2]);}
break;
case 3:
{Spher point1(inco[0],inco[1],inco[2]);}
break;
}
cout<<endl<<"Transformer en quel systeme ? \n1:carthesien \n2:cylindrique \n3:spherique"<<endl;
cin>>choix;
switch(choix)
{
case 1:
{Carth point2(inco[0],inco[1],inco[2]);}
break;
case 2:
{Cylin point2(inco[0],inco[1],inco[2]);}
break;
case 3:
{Spher point2(inco[0],inco[1],inco[2]);}
break;
}
point2(point1);
cout<<endl<<coords[choix-1]<<endl;
for(int i=1;i<4;i++)
{
cout<<point2.GetCoord(i)<<" ";
}
system("PAUSE");
return EXIT_SUCCESS;
} |
en dehors le cela, il pointe aussi ce switch (points.ccp):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| double Spher::GetCoord(int num=1)
{
switch num
{
case 1:
return r;
break;
case 2:
return Theta;
break;
case 3:
return Phi;
break;
default:
return NULL;
}
} |
(avec quelques variations)
si vous pouviez m'aider...
je met les fichier en piece jointe au cas ou.
Merci