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

Langage C++ Discussion :

Modifier un methode héritée d'une classe


Sujet :

Langage C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 34
    Points : 20
    Points
    20
    Par défaut Modifier un methode héritée d'une classe
    Bonsoir,
    je souhaiterait savoir s'il était possible de modifier ou redefinir une méthode ,de la classe mère, dans une classe fille, pour que celle-ci gère des exception propre a la classe fille.

    maClasseMere.hpp
    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
    class maClasseMere
    {
    public :
         /* Ma methode dans la classe mère */
         int classSolutionMatrice::nbZeroLigneMatriceVal(const int ligne)
         {
             int nbZero = 0;
             for (int col = 0; col <_nbPersonnes; col++)
             {
                 if(_matriceVal[ligne][col] == 0) { nbZero++; }
             }
             return nbZero;
         }
    protected: 
            int _nbPersonnes;
            int** _matriceVal
    }
    maClasseFille.hpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    class maClasseFille : public maClasseMere
    {
    public:
         /*  Redefinition de ma methode prenant en compte les valeur de _ligneMarque et _ColonneMarque */
    private:
            bool* _LigneMarque;
            bool* _ColonneMarque;
    }
    Merci pour votre aide.

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Oui, cela s'appelle les fonctions virtuelles : cf Les fonctions virtuelles en C++.
    Ceci dit l'héritage suppose un certains nombre de chose et en particulier que la classe fille ne peut rajouter de préconditions à la classe mère à une des fonctions de son interface.
    Évites les pointeurs nus, regarde du côté de std::vector.

  3. #3
    Membre émérite
    Avatar de imperio
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    852
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 852
    Points : 2 298
    Points
    2 298
    Par défaut
    Je ne comprends pas vraiment l'intérêt d'avoir des pointeurs sur booléens dans maClasseFille. Une raison particulière ? Sinon je ne pense pas que ce soit une bonne chose car ça consommera plus de mémoire (très peu, certes, mais tout de même !) que de simplement déclarer des booléens...

Discussions similaires

  1. Réponses: 6
    Dernier message: 21/07/2009, 13h53
  2. Réponses: 0
    Dernier message: 26/06/2009, 09h23
  3. Récupérer et modifier le code source d'une classe
    Par aA189 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/07/2008, 11h43
  4. methode pour exécuter une class dans un jar
    Par yann_p dans le forum Langage
    Réponses: 2
    Dernier message: 18/04/2006, 17h47
  5. [Template] methode template d'une classe pas template
    Par bigquick dans le forum Langage
    Réponses: 8
    Dernier message: 25/03/2005, 15h09

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