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 :

Programme d'étude sur le C++ bas niveau n°11 : Héritage [Tutoriel]


Sujet :

C++

  1. #1
    Membre expert

    Avatar de germinolegrand
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2010
    Messages
    738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2010
    Messages : 738
    Points : 3 892
    Points
    3 892
    Par défaut Programme d'étude sur le C++ bas niveau n°11 : Héritage
    Poursuivant les dix premiers articles de la série d'Alex Darby que l'on peut retrouver traduite ici : Programme d'étude sur le C++ bas niveau.

    Bravo à Kalite qui vient de terminer la traduction du 11e article :

    Celui-ci porte sur l'héritage, il aborde la façon dont celui-ci se retrouve dans le code assembleur généré, il fait suite au 2e article qui abordait les types et structures simples.

    Le prochain abordera l'héritage multiple, cela promet d'être passionnant !

    Et vous,
    Connaissez-vous la portée de ce que vous écrivez, la façon dont cela impactera le code assembleur généré ?
    Vous intéressez-vous au code généré par votre code C++ ? Pourquoi ?



    Si vous souhaitez vous lancer dans la traduction ou la rédaction d'un article, n'hésitez pas à me contacter, je pourrai ainsi vous fournir tous les renseignements et les outils nécessaires !

  2. #2
    Membre expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Points : 3 156
    Points
    3 156
    Par défaut
    Hello

    Pas mal, par contre j'émettrais les réserves suivantes:
    - Les noms des membres commencent par un _ ce qui est déconseillé car c'est une convention normalement réservée à la STL.
    - L'impact de l'ajout d'une table virtuelle n'est pas abordé.
    - L'impact de l'héritage multiple n'est pas abordé.
    Find me on github

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 764
    Points : 2 704
    Points
    2 704
    Par défaut
    Citation Envoyé par jblecanard Voir le message
    - Les noms des membres commencent par un _ ce qui est déconseillé car c'est une convention normalement réservée à la STL.
    Déconseillé par qui ? La norme ?

    Citation Envoyé par jblecanard Voir le message
    - L'impact de l'héritage multiple n'est pas abordé.
    D'après les propos de germinolegrand, cela sera traité dans l'élément suivant.

  4. #4
    Membre confirmé
    Avatar de Kalite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 310
    Points : 553
    Points
    553
    Par défaut
    Bonjour,

    en effet l'héritage multiple est traité dans l'article suivant. Je suis entrain de le traduire donc encore un peu de patience.

  5. #5
    Membre expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Points : 3 156
    Points
    3 156
    Par défaut
    Citation Envoyé par oodini Voir le message
    Déconseillé par qui ? La norme ?
    Oui, par la norme.

    Citation Envoyé par Kalite Voir le message
    en effet l'héritage multiple est traité dans l'article suivant. Je suis entrain de le traduire donc encore un peu de patience.
    Cool
    Find me on github

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 764
    Points : 2 704
    Points
    2 704
    Par défaut

    Reserved in any scope, including for use as implementation macros:
    • identifiers beginning with an underscore and an uppercase letter
    • identifiers containing adjacent underscores (or "double underscore")

    Reserved in the global namespaces:
    • identifiers beginning with an underscore

    Les membres commençant par un _ suivis par une minuscule, comme dans le code de l'article, ne semblent donc pas poser de problèmes.

  7. #7
    Membre expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Points : 3 156
    Points
    3 156
    Par défaut
    C'est exact, mais c'est plus simple et moins source d'erreur de décider par convention de ne simplement pas mettre d'underscore au début du nom des membres tu ne crois pas ? Ce que préconise l'auteur de la réponse du lien, ce que préconisent les google guidelines, ainsi que des spécialistes reconnus comme Herb Sutter (par exemple dans cet article).
    Find me on github

  8. #8
    Expert confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 711
    Points : 4 442
    Points
    4 442
    Par défaut
    Citation Envoyé par germinolegrand Voir le message
    Connaissez-vous la portée de ce que vous écrivez, la façon dont cela impactera le code assembleur généré ?
    J'ai souvent une bonne idée de ce que ça va donner en théorie, mais il reste encore trop de magie derrière le C++ et les optimisations des compilos pour prévoir le code généré exactement.
    Citation Envoyé par germinolegrand Voir le message
    Vous intéressez-vous au code généré par votre code C++ ? Pourquoi ?
    Rarement, dans deux cas seulement :
    L'optimisation, une fois qu'on à le meilleur algo, il faut le meilleur code.
    Le debug, mais ça reste rare, généralement un débogueur et quelques points d'arrêts suffisent.

  9. #9
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    Sans aller chercher aussi loin, la FAQ est très claire sur les préfixages par des tirets-bas, et c'est le même discours que celui tenu par ailleurs : on n'est pas en Java/C#/whatever, le préfixage par un _telNom est globalement proscris car _Nom et __nom sont réservés aux implémentations de la lib standard et aux spécificités des compilos

    Mais de toute façons, si l'auteur utilise un style d'écriture, n'allez pas le modifier dans le cadre d'une traduction. Si le traducteur a des remarques à émettre, il faut rajouter des NdT, et puis basta.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  10. #10
    Membre expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Points : 3 156
    Points
    3 156
    Par défaut
    Citation Envoyé par Luc Hermitte Voir le message
    Mais de toute façons, si l'auteur utilise un style d'écriture, n'allez pas le modifier dans le cadre d'une traduction. Si le traducteur a des remarques à émettre, il faut rajouter des NdT, et puis basta.
    C'est vrai, ma remarque porte bien sur le contenu effectif, pas sur la version traduite en particulier .
    Find me on github

Discussions similaires

  1. Programme d'étude sur le C++ bas niveau
    Par Bousk dans le forum C++
    Réponses: 24
    Dernier message: 21/12/2014, 20h23
  2. Réponses: 1
    Dernier message: 09/08/2014, 00h07
  3. Programme d'étude sur le C++ bas niveau N°11
    Par Kalite dans le forum Contribuez
    Réponses: 28
    Dernier message: 29/03/2014, 00h35

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