Résultats de 1 à 7 sur 7

Sujet : Utiliser des fonctions d'un parent

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    665

    Utiliser des fonctions d'un parent

    J\'ai un petit problème, je vous fais une simplification du code pour mieux vous expliquer :
    Code:
    class Enfant
    {
    public:
    void Fonction();
    };
    class Parent
    {
     public:
     void Fonction();
     Enfant bzz;
    };
    void Enfant::Fonction()
    {
     // C\'est là le problème
    }
    J\'aimerai utiliser la fonction de Parent à l\'intérieur de la définition de la fonction de l\'enfant. A priori, l\'enfant est issue d\'une instanciation propre de la classe parent, donc pas de problème pour l\'unicité.
    Je pourrais très bien inclure un pointeur à initialiser dans la classe Enfant, mais mon architecture est complexe et ça me force à réorganiser pas mal de trucs. Je voulais savoir si j\'avais loupé quelque chose en C++ ou si quelqu\'un avait une idée pour m\'aider. :roll:
    [col=#FFDD1A]( [/col][col=#FF0000]B[/col]e [col=#FF0000]S[/col]i[col=#FF0000]d[/col]e [col=#FFDD1A])[/col]

  2. #2
    Membre MP
    Inscrit
    août 2013
    Messages
    665
    Résolu le problème avec un pointeur assez mal placé, mais c\'est provisoire. J\'attends toujours des idées. :wink:
    [col=#FFDD1A]( [/col][col=#FF0000]B[/col]e [col=#FF0000]S[/col]i[col=#FF0000]d[/col]e [col=#FFDD1A])[/col]

  3. #3
    Membre MP
    Inscrit
    août 2013
    Messages
    6 517
    J\'ai du mal a te suivre.
    Parent possede un champ enfant.

    et tu veux faire une fonction enfant qui lance la fonction parent.

    Tu veux pas faire de l\'heritage ?

    A priori je vois pas en faisant avec ta mainière car il est possible de creer un enfant sans parent et ca buguerait ta fonction. De plus, le champ enfant ne peux pas acceder aux autres donnees de parent avec cette methode.

    A part si j\'ai raté un truc il faut passer par l\'heritage.
    Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
    N'oubliez pas le Tag [Résolu]http://www.ressources.moteurprog.com...rum/Resolu.gif.

    Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

  4. #4
    Membre MP
    Inscrit
    août 2013
    Messages
    665
    Ouais j\'ai pensé aussi à l\'héritage, mais malheureusement c\'est pas possible. Et le truc du bug montre qu\'il ne doit sans doute pas exister un \"truc\" en C++ pour ce problème. En fait c\'est difficile à expliquer, il faut voir dans mon code, mais ça prendrait trop de temps pour tout expliquer. Je crois que je vais me cantonner au pointeur en global. C\'est moche mais j\'ai pas trop le choix. Désolé, le problème n\'est pas très clair en effet.
    [col=#FFDD1A]( [/col][col=#FF0000]B[/col]e [col=#FF0000]S[/col]i[col=#FF0000]d[/col]e [col=#FFDD1A])[/col]

  5. #5
    Membre MP
    Inscrit
    août 2013
    Messages
    6 517
    Et tu peux pas faire une autre fonction dans le parent qui fasse comme la fonction d\'enfant ?

    J\'ai aussi ce genre de pb qd je rajoute des morceaux que j\'avais oublié.
    Parfois, je prefere tout reprendre pour faire qqch de propre, mais ca prend du temps.
    Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
    N'oubliez pas le Tag [Résolu]http://www.ressources.moteurprog.com...rum/Resolu.gif.

    Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

  6. #6
    Membre MP
    Inscrit
    août 2013
    Messages
    665
    Impossible aussi. Mais je remarque que les informations sont insuffisantes. Donc je pense que ma question a échouée, merci de t\'être dérangé pac, je crois que c\'est sans issue.
    [col=#FFDD1A]( [/col][col=#FF0000]B[/col]e [col=#FF0000]S[/col]i[col=#FF0000]d[/col]e [col=#FFDD1A])[/col]

  7. #7
    Membre MP
    Inscrit
    août 2013
    Messages
    6 517
    Tu sais je n\'existe sur ce forum que par les posts.
    Donc ne faisant pas de sujets, je dois bien répondre pour être la.

    S\'il faut, il faut reprendre la structure des classes.
    Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
    N'oubliez pas le Tag [Résolu]http://www.ressources.moteurprog.com...rum/Resolu.gif.

    Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé