erreur sur ce code mais ou est-elle ? - C++ - Programmation
Marsh Posté le 04-06-2003 à 15:26:17
1) Mets des balises [cpp] [/ cpp] autour de ton code
2) Il se passe quoi?
Marsh Posté le 04-06-2003 à 15:26:22
Mais merde a la fin, c'est vraiment si c.h.i.a.n.t que ca que de dire c'est QUOI l'erreur ?
parce que figure toi que ton truc on s'en fout completement, si tu fais pas un minimum d'effort pour poster un truc intelligent on va se decarcasser juste pour te faire plaisir
Marsh Posté le 04-06-2003 à 15:33:04
ok je savais pas pour l'histoire des [] :-)
je vais etre plus clair...
voici le code ou il me met mon erreur :
[ cpp ]
#ifndef FenetreTestH
#define FenetreTestH
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include "APOLocalisateur.h"
//---------------------------------------------------------------------------
class TFTestAPOSycom : public TForm
{
__published: // Composants gérés par l'EDI
TEdit *EAbscisse;
TTimer *Timer1;
TEdit *EVitesse;
TEdit *EDelai;
TLabel *LAbscisse;
TLabel *LVitesse;
TLabel *LDelai;
void __fastcall BLireClick(TObject *Sender);
void __fastcall Timer1Timer(TObject *Sender);
private: // Déclarations de l'utilisateur
APOLocalisateur *_localisateur;
public: // Déclarations de l'utilisateur
__fastcall TFTestAPOSycom(TComponent* Owner);
__fastcall ~TFTestAPOSycom();
};
//---------------------------------------------------------------------------
extern PACKAGE TFTestAPOSycom *FTestAPOSycom;
//---------------------------------------------------------------------------
#endif
[ /cpp ]
borland me met comme erreur :
[C++ Erreur] FenetreTest.h(12): E2176 Trop de types dans la déclaration
sur la ligne :
[ cpp ]
class TFTestAPOSycom : public TForm
[ /cpp ]
Donc je pense que l'erreur vient du dessus du point APOLocalisateur.h inclut auparavant. Voici le APOLocalisateur.h :
[ cpp ]
#include "ILocalisateur.h"
#include "Sysutils.hpp"
class APOLocalisateur : public ILocalisateur
{
private:
//déclaration des fonctions exporté de la dll
typedef int (__stdcall TF_LocApoGetAbscisse)(double* pAbscisse);
typedef int (__stdcall TF_LocApoGetVitesse)(double* pVitesse);
typedef int (__stdcall TF_LocApoGetDelai)(double* pTemps,double abscisse);
typedef char* (__stdcall TF_LocApoGetDerniereErreur)(void);
TF_LocApoGetAbscisse* _pfLocApoGetAbscisse;
TF_LocApoGetVitesse* _pfLocApoGetVitesse;
TF_LocApoGetDelai* _pfLocApoGetDelai;
TF_LocApoGetDerniereErreur* _pfLocApoGetDerniereErreur;
HINSTANCE hinstDLL;
public:
//------------------- CONTRUCTEUR DESTRUCTEUR -----------------------------
APOLocalisateur(char* nomDLL)
{
hinstDLL=LoadLibrary("LocSycomC.dll" );
_pfLocApoGetAbscisse=(TF_LocApoGetAbscisse*)GetProcAddress(hinstDLL, "LocApoGetAbscisse" );
_pfLocApoGetVitesse=(TF_LocApoGetVitesse*)GetProcAddress(hinstDLL, "LocApoGetVitesse" );
_pfLocApoGetDelai=(TF_LocApoGetDelai*)GetProcAddress(hinstDLL, "LocApoGetDelai" );
_pfLocApoGetDerniereErreur=(TF_LocApoGetDerniereErreur*)GetProcAddress(hinstDLL, "LocApoGetDerniereErreur" );
}
~APOLocalisateur()
{
FreeLibrary(hinstDLL);
}
//------------------------------------------------------------------------------
double GetAbscisse(void)
{
double abscisse;
if (0 != _pfLocApoGetAbscisse(&abscisse))
throw Exception(DerniereErreur());
return abscisse;
}
//------------------------------------------------------------------------------
double GetVitesse(void)
{
double vitesse;
if (0 != _pfLocApoGetVitesse(&vitesse))
throw Exception(DerniereErreur());
return vitesse;
}
//------------------------------------------------------------------------------
double GetDelai(double abcsisseAAtteindre)
{
double temps;
double abscisseAAtteindre;
if(0!=_pfLocApoGetDelai(&temps,abscisseAAtteindre))
throw Exception(DerniereErreur());
return temps;
}
//------------------------------------------------------------------------------
char* DerniereErreur(void)
{
return _pfLocApoGetDerniereErreur();
}
//------------------------------------------------------------------------------
void SetPoidsImpulsion(unsigned int poids)
{
}
}
#endif
[ /cpp ]
Marsh Posté le 04-06-2003 à 15:34:30
ok je savais pas pour l'histoire des [] :-)
je vais etre plus clair...
voici le code ou il me met mon erreur :
Code :
|
borland me met comme erreur :
[C++ Erreur] FenetreTest.h(12): E2176 Trop de types dans la déclaration
sur la ligne :
Code :
|
Donc je pense que l'erreur vient du dessus du point APOLocalisateur.h inclut auparavant. Voici le APOLocalisateur.h :
Code :
|
Marsh Posté le 04-06-2003 à 15:34:52
Sans les espaces les balises!
Et tu peux éditer ton post original au lieu de tout remettre!
Marsh Posté le 04-06-2003 à 15:35:13
Sans les espaces on a dit ( si t'as du mal clique sue le petit boutton C/c++)
Marsh Posté le 04-06-2003 à 15:36:41
ReplyMarsh Posté le 04-06-2003 à 15:37:27
Et c les lcassique pas de ";" à la fin de la classe.
Marsh Posté le 04-06-2003 à 15:37:44
exact merci les gars la dessus j'ai merder pour une connerie pareil
Marsh Posté le 04-06-2003 à 15:38:15
J'en ai marre j'ai 3 métros de retard
Marsh Posté le 04-06-2003 à 15:38:52
LetoII a écrit : Et c les lcassique pas de ";" à la fin de la classe. |
quand est ce que ce genre d'erreur sera enfin punie par la loi ?
Marsh Posté le 04-06-2003 à 15:40:12
chrisbk a écrit : |
J'irrais pas juque là, ça arrive même aux plus expérimentés.
Mais bon quand j'ai une erreur à la con c la première chose que je vérifie
Marsh Posté le 04-06-2003 à 15:41:08
LetoII a écrit : |
ca n'arrive pas quand on a une charmante IDE qui te balance le patron de ta classe
Marsh Posté le 04-06-2003 à 15:44:04
chrisbk a écrit : |
Arf, mais ça m'arrive de bosser sans IDE alors je fais encore gaffe
Marsh Posté le 04-06-2003 à 15:44:46
LetoII a écrit : |
je suis completement dependant de ces assistants
Marsh Posté le 04-06-2003 à 15:45:54
chrisbk a écrit : |
On devient vite acro, la première fois que j'ai du retravailler avec Xemacs ça m'a fait drole
Marsh Posté le 04-06-2003 à 15:22:28
J'ai une erreur la dedans mais je la vois pas !!!!!!
#ifndef APOLocalisateurH
#define APOLocalisateurH
#include "ILocalisateur.h"
#include "Sysutils.hpp"
class APOLocalisateur : public ILocalisateur
{
private:
//déclaration des fonctions exporté de la dll
typedef int (__stdcall TF_LocApoGetAbscisse)(double* pAbscisse);
typedef int (__stdcall TF_LocApoGetVitesse)(double* pVitesse);
typedef int (__stdcall TF_LocApoGetDelai)(double* pTemps,double abscisse);
typedef char* (__stdcall TF_LocApoGetDerniereErreur)(void);
TF_LocApoGetAbscisse* _pfLocApoGetAbscisse;
TF_LocApoGetVitesse* _pfLocApoGetVitesse;
TF_LocApoGetDelai* _pfLocApoGetDelai;
TF_LocApoGetDerniereErreur* _pfLocApoGetDerniereErreur;
HINSTANCE hinstDLL;
public:
//------------------- CONTRUCTEUR DESTRUCTEUR -----------------------------
APOLocalisateur(char* nomDLL)
{
hinstDLL=LoadLibrary("LocSycomC.dll" );
_pfLocApoGetAbscisse=(TF_LocApoGetAbscisse*)GetProcAddress(hinstDLL, "LocApoGetAbscisse" );
_pfLocApoGetVitesse=(TF_LocApoGetVitesse*)GetProcAddress(hinstDLL, "LocApoGetVitesse" );
_pfLocApoGetDelai=(TF_LocApoGetDelai*)GetProcAddress(hinstDLL, "LocApoGetDelai" );
_pfLocApoGetDerniereErreur=(TF_LocApoGetDerniereErreur*)GetProcAddress(hinstDLL, "LocApoGetDerniereErreur" );
}
~APOLocalisateur()
{
FreeLibrary(hinstDLL);
}
//------------------------------------------------------------------------------
double GetAbscisse(void)
{
double abscisse;
if (0 != _pfLocApoGetAbscisse(&abscisse))
throw Exception(DerniereErreur());
return abscisse;
}
//------------------------------------------------------------------------------
double GetVitesse(void)
{
double vitesse;
if (0 != _pfLocApoGetVitesse(&vitesse))
throw Exception(DerniereErreur());
return vitesse;
}
//------------------------------------------------------------------------------
double GetDelai(double abcsisseAAtteindre)
{
double temps;
double abscisseAAtteindre;
if(0!=_pfLocApoGetDelai(&temps,abscisseAAtteindre))
throw Exception(DerniereErreur());
return temps;
}
//------------------------------------------------------------------------------
char* DerniereErreur(void)
{
return _pfLocApoGetDerniereErreur();
}
//------------------------------------------------------------------------------
void SetPoidsImpulsion(unsigned int poids)
{
}
}
#endif