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 :

Héritage de class. Comment obliger l'implémentation d'une méthode.


Sujet :

Langage C++

  1. #1
    Membre averti
    Avatar de Pierre8r
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 518
    Points : 341
    Points
    341
    Par défaut Héritage de class. Comment obliger l'implémentation d'une méthode.
    Bonjour,

    J'ai une class mère Point.
    Je souhaite pouvoir créer des class dérivées de cette class en étant obligé d'implémenter une méthode, comme la méthode Afficher() par exemple, dans toutes les class filles de la class mère Point que je vais créer.
    Merci d'avance de votre aide.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 068
    Points : 12 111
    Points
    12 111
    Par défaut
    C'est le rôle des fonctions virtuelles pures.
    https://cpp.developpez.com/faq/cpp/?...virtuelle-pure

    P.S.: attention, mettre une fonction membre "Afficher" dans une classe "Point" et très probablement une grosse erreur de conception.
    Une fonction libre "Afficher" serait bien plus pertinent.

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 965
    Points
    32 965
    Billets dans le blog
    4
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  4. #4
    Membre averti
    Avatar de Pierre8r
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    518
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 518
    Points : 341
    Points
    341
    Par défaut
    Citation Envoyé par bacelar Voir le message
    C'est le rôle des fonctions virtuelles pures.
    https://cpp.developpez.com/faq/cpp/?...virtuelle-pure

    P.S.: attention, mettre une fonction membre "Afficher" dans une classe "Point" et très probablement une grosse erreur de conception.
    Une fonction libre "Afficher" serait bien plus pertinent.
    Merci bacelar et Bousk, ça a l'air d’être tout à fait ça.

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 068
    Points : 12 111
    Points
    12 111
    Par défaut
    J'ai suivi le premier lien dans votre signature, n'utilisez aucun livre de Delannoy pour votre apprentissage, ils sont à fuir comme la peste.

  6. #6
    Membre confirmé Avatar de KsassPeuk
    Homme Profil pro
    Ingénieur Chercheur
    Inscrit en
    Juillet 2013
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Chercheur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 138
    Points : 635
    Points
    635
    Par défaut
    Et ne faites pas d'héritage sur une notion de point, ça ne tient pas.

  7. #7
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 612
    Points : 30 612
    Points
    30 612
    Par défaut
    Salut,
    Citation Envoyé par bacelar Voir le message
    P.S.: attention, mettre une fonction membre "Afficher" dans une classe "Point" et très probablement une grosse erreur de conception.
    Faire hériter une classe Point est vraisemblablement une très grosse erreur de conception
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  8. #8
    Membre à l'essai Avatar de fabzyr
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 55
    Points : 24
    Points
    24
    Par défaut
    Je ne voie pas ce qui peut-être un point a part un point en effet.

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 068
    Points : 12 111
    Points
    12 111
    Par défaut
    Je ne voie pas ce qui peut-être un point a part un point en effet.
    Définissez parfaitement ce qu'est un "point", SVP.

  10. #10
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 612
    Points : 30 612
    Points
    30 612
    Par défaut
    Citation Envoyé par bacelar Voir le message
    Définissez parfaitement ce qu'est un "point", SVP.
    On s'en fout de ce que c'est: c'est -- de toute évidence -- une notion (plus ou moins) complexe permettant de se localiser dans un référentiel quelconque.

    A partir de là, on peut clairement faire valoir
    • que si l'on modifie ne serait-ce qu'un tout petit peu la moindre valeur qui compose un point, nous obtenons réellement ... un point totalement différent
    • qu'une comparaison entre deux points est parfaitement envisageable, pour peu que nous prenions l'ensemble des données qui composent le point en compte
    • qu'il est tout à fait possible, à un instant T de l'exécution, de se retrouver avec plusieurs points en mémoires pour lesquels les données qui les composent seraient strictement identiques (ou, à tout le moins, pour lesquelles la comparaison nous inciterait à les considérer comme identiques)

    Tout cela nous incite donc à penser que nous sommes face à une classe dont on peut clairement dire qu'elle a sémantique de valeur et qui n'a absolument rien à faire dans une hiérarchie de classe
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 13
    Dernier message: 10/01/2013, 15h19
  2. Réponses: 0
    Dernier message: 20/05/2012, 20h58
  3. Réponses: 1
    Dernier message: 14/05/2009, 11h59
  4. Réponses: 3
    Dernier message: 03/10/2008, 12h48
  5. Réponses: 4
    Dernier message: 27/06/2005, 19h26

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