9sber
Messages postés28Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention14 septembre 2004
-
2 juil. 2004 à 11:36
cs_hakim0
Messages postés123Date d'inscriptionmercredi 27 août 2003StatutMembreDernière intervention12 août 2008
-
21 avril 2006 à 17:07
Salut, mon pb est le suivant à la compilation:
-----------------------------------------------------------------
RegistrationMgr.h(23) : error C2504: 'AppMgr' : base class undefined
-----------------------------------------------------------------
voici la classe 'AppMgr' :
#ifndef APPMGR0_H
#define APPMGR0_H
#include "EndUser.h"
#include "SpokenToUser.h"
class EndUser;
class SpokenToUser;
class AppMgr{
public:
virtual bool createApplication(EndUser* eu, SpokenToUser* stu = 0);
virtual bool freeApplication(EndUser* eu, SpokenToUser* stu = 0);};
#endif //APPMGR0_H
theneoiceman
Messages postés78Date d'inscriptionlundi 14 avril 2003StatutMembreDernière intervention23 avril 2010 2 juil. 2004 à 15:16
D'après moi tu n'as pas besoin de préciser le mot-clé virual lorsque tu déclares AppMgr dans ta declaration de RegistrationMgr.
Mets juste class RegistrationMgr : public AppMgr // etc...
9sber
Messages postés28Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention14 septembre 2004 2 juil. 2004 à 17:41
cela permet de déclarer la classe, mais de la définir par la suite. En fait, c'est pour faciliter la compilation. Déclaration de tout, puis définitions des classes.
Ici, c'est vrai que ce n'est pas utile car j'ai le "include". D'ailleurs, je les vire. (c'est une ruse de cowboy que j'ai vu dans QT)
En fait, le pb tourne bien autour de cela. Sous linux, la compilation me dit que le "type de classe de base est incomplet" pour la classe APPMGR. Ce que j'ai compris, c'est qu'au moment de compilé la classe RegistrationMgr, il ne trouve pas la compilation de la classe mère AppMgr.
Pourtant, la déclaration :
class RegistrationMgr: public AppMgr, via le include devrait amener à compiler cette classe AppMgr, non?
Vous n’avez pas trouvé la réponse que vous recherchez ?