IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

problème d'héritage C2504


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut problème d'héritage C2504
    voila je deviens fou

    j'ai une classe Conf ds un fichier Conf.h :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    #if !defined(_CONF_H)
    #define _CONF_H
     
    #include "virtualHost.h"
    #include "globalConf.h"
    #include "utils.h"
    #include "http_errors.h"
    #include "const.h"
    #include <tinyxml.h>
    #include "ioXML.h"
    class ioXML;
    class Conf;
     
    typedef struct s_elem
    {
    	char*	elem;
    	void	(Conf::*f)(TiXmlNode *);
    }t_elem;
     
    class Conf {
    public:
    	void				setConf();
    	void				majConf();
    	ioXML				*io;
    private:
    	globalConf			gConf;
    	list<virtualHost*>	VHConf;
    };
     
    #endif  //_CONF_H

    et une classe ioXML qui herite de Conf dans le fichier ioXML.h :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    #if !defined(_IOXML_H)
    #define _IOXML_H
     
    #include "Conf.h"
    #include "utils.h"
    class ioXML;
    class Conf;
     
    class ioXML : public Conf 
    {
    private:
    	TiXmlDocument	*doc;
    //	TiXmlError		err;
    public:
    	void			load_and_init();
    	int				save_conf(TiXmlNode * pParent);
    	//TiXmlDocument	*getDoc();
    	//void			setDoc(TiXmlDocument *doc);
    };
     
     
    //#define	TiXmlError		class list_error
     
    #endif  //_ioxml_H
    et ... j'arrive pas a compiler, j'ai un malheureux Conf : base class undefined

    et ... non je ne veux pas les mettre dans le meme fichier :-)

    si quelqu'un avait une petite idée du probleme ...

    merci d'avance

  2. #2
    Membre expérimenté
    Inscrit en
    Décembre 2003
    Messages
    272
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 272
    Par défaut
    (balises code)

    C'est quoi cesqui trainent ? Comme la classe est définie dans conf.h, il est inutile de la déclarer ainsi.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    disons que c'était ... expérimental mais ca ne change rien au probleme en fait .

  4. #4
    Membre expérimenté Avatar de Ksempac
    Inscrit en
    Février 2007
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 165
    Par défaut
    ioXML.h inclue conf.h qui inclue ioXML.h qui inclue conf.h ...

  5. #5
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Tu as un problème d"inclusions cycliques. A mon avis tu peux virer ioXML.h de conf.h, ça n'a aucune utilité et ça réglera le problème.

Discussions similaires

  1. [C++]Problème d'héritage : error C2504
    Par dedesite dans le forum Visual C++
    Réponses: 8
    Dernier message: 03/08/2006, 17h01
  2. problème constructeur + héritage
    Par BOLARD dans le forum C++
    Réponses: 10
    Dernier message: 13/04/2006, 08h11
  3. [AS2] Problème d'héritage
    Par wwave dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 27/01/2006, 09h26
  4. Problème d'héritage ?
    Par Romanops dans le forum WinDev
    Réponses: 2
    Dernier message: 16/11/2005, 17h18
  5. Problème d'héritage d'une méthode protégée
    Par shenron666 dans le forum C++
    Réponses: 9
    Dernier message: 28/04/2005, 23h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo