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

MFC Discussion :

Probleme d'apel de fonction dans une autre classe


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    26
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 26
    Par d�faut Probleme d'apel de fonction dans une autre classe
    Bonjour, je souhaite faire des fonctions de sauvegarde dans diff�rentes classes d'un projet mais j'ai un probleme pour appel� la deuxi�me fonction. Je m'explique, je suis dans la classe Ligne et je veux apeller a l'int�rieur de la fonction de sauvergarde de le classe Ligne la fonction de sauvegarde de la classe CBoucle_Principale:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    void CLigne::sauvegarderXML()
    {
    ofstream fichier("config.xml", ios_base::app);
    fichier<<"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n";
    fichier<<"<!DOCTYPE config_ligne_dtd SYSTEM \"config_ligne_dtd.dtd\">\n";
    fichier<<"\n";
    fichier<<"<Ligne identification=\"\">\n";
    fichier<<"\n";
    fichier.close();
    CBoucle_Principale::sauvegarderXML();
    }
    
    et la une erreur se produit : "e:\projet vf\simuligne2006\Ligne.cpp(173): error C2352: 'CBoucle_Principale::sauvegarderXML' : appel non conforme d'une fonction membre non static

    Donc voila je pense que c'est l'apel de la fonction qui ne va pas mais je ne sais pas et ne trouve pas comment il faut faire.

    Merci d'avance pour toute aide.

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    tu as le droit de faire �a que si
    CBoucle_Principale est la classe parent de CLigne ce qui ne doit pas etre la cas ici .
    donc l'appel est interpret� comme celui d'une fonction statique,
    ce qui ne doit pas etre le cas non plus ....


  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    26
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 26
    Par d�faut
    Si je fais �a car la classe Boucle_principale h�rite de la classe Ligne justement c'est bien sa que tu entends par "CBoucle_Principale est la classe parent de CLigne"
    ?

  4. #4
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    Citation Envoy� par freecell31
    Si je fais �a car la classe Boucle_principale h�rite de la classe Ligne justement c'est bien sa que tu entends par "CBoucle_Principale est la classe parent de CLigne"
    ?
    ben non c'est l'inverse : pour faire ton appel la classe CLigne doit heriter de CBoucle_Principale et non l'inverse ...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    26
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 26
    Par d�faut
    Oui mais pour moi c'est la classe Boucle_Principale qui h�rite de Ligne donc comment je peux faire?
    merci d'avance

  6. #6
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    en g�n�ral on fait en sorte que la fonction soit virtuelle (sauvegarderXML)
    et dans la classe herit�e on redefinit la fonction en appelant la fonction de la classe de base ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    void CBoucle_Principale::sauvegarderXML( ofstream &rStream)
    {
        CLigne::sauvegarderXML(rStream);
       // sauvegardes complementaires...
    }
    //CLigne *pLigne= new   CBoucle_Principale ;
    ofstream fichier("config.xml", ios_base::app);
    pLigne->sauvegarderXML(fichier);



Discussions similaires

  1. Appel d'une fonction dans une autre classe
    Par Analfabete dans le forum wxPython
    R�ponses: 3
    Dernier message: 01/10/2007, 09h45
  2. R�ponses: 2
    Dernier message: 22/12/2006, 11h35
  3. R�ponses: 3
    Dernier message: 30/11/2006, 06h25
  4. Probleme appel de fct dans une autre classe
    Par crakotte_finance dans le forum C++
    R�ponses: 6
    Dernier message: 09/10/2006, 21h22
  5. PHP4 appel d'une fonction dans une autre
    Par cmicdev dans le forum Langage
    R�ponses: 6
    Dernier message: 18/05/2006, 11h37

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