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 :

convention nomage des variables membre


Sujet :

C++

  1. #1
    Membre tr�s actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par d�faut convention nomage des variables membre
    Bonjour,

    Quel sont les arguments avanc�s pour d�fendre la convention de nommage avec un underscore � la fin plut�t qu'au d�but par exemple concernant les variables membres :

    int myvar_;

    On retrouve cette syntaxe dans pas mal de projets de qualit�s

    Merci

  2. #2
    gl
    gl est d�connect�
    R�dacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 46
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par d�faut
    Je t'invite � jeter un �il sur ce sujet.

  3. #3
    Expert �minent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activit� : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par d�faut
    Salut,

    Le seul vrai argument que l'on puisse avancer (mais il est identique pour toute convention de nommage qui d�ciderait de pr� / post fixer le nom des membres) est que cela te permet d'�viter les accesseurs (ou les mutateurs) et getXXX / setXXX...

    Cela te permet, en effet, d'envisager une classe sous la forme de
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    class MaClass
    {
        public:
            std::string const & name() const{return name_;} // "getName()"
            /* voire, pourquoi pas ? */
            void name(std::string const & newname(){name_=newname;} // "setname"
        private:
            std::string name_;
    };
    Mais tu remarquera que cet argument se tient pour n'importe quelle convention de nommage, que l'on d�cide d'utiliser m_name, my_name myName ou...

    il y a bien un autre argument, mais je ne le donne que pour ce qu'il vaut: l'ajout d'un underscore en fin de nom est, sans doute, la solution la plus courte que l'on puisse trouver qui ne soit pas r�serv�e
    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

  4. #4
    Membre Expert Avatar de Astraya
    Homme Profil pro
    Consommateur de caf�
    Inscrit en
    Mai 2007
    Messages
    1 048
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : Consommateur de caf�
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 048
    Par d�faut
    Bonjour,

    L'avantage est aussi de garder un variable simple, lisible et non surcharg� avec des "m" ou des majuscules. Sinon il n'y a pas vraiment de bon ou de mauvais choix dans une convention de nommage. Tout vas d�pendre d'un gars qui vas d�cid� que c'est mieux comme �a car lui � d�cid� que c'�tait mieux comme �a

  5. #5
    Membre tr�s actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par d�faut
    oui c'est s�r que c'est beaucoup une histoire de go�t et de couleur....dans le lien donn� par gl, il y est fait mention que les _ en d�but de variable �tait reserv� par le compilo ?? exception faite si c'est une minuscule qui suit...comment dire, �a me parait �trange comme r�gle , quelqu'un pour infirmer/confirmer ?

    EDIT:
    Citation Envoy� par koala01 Voir le message
    Salut,

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    class MaClass
    {
        public:
            std::string const & name() const{return name_;} // "getName()"
            /* voire, pourquoi pas ? */
            void name(std::string const & newname(){name_=newname;} // "setname"
        private:
            std::string name_;
    };
    je suis moi m�me tr�s friand de cette fa�on de faire (mis � part la place du const mais c'est une autre histoire)

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 294
    D�tails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 294
    Par d�faut
    Salut,

    Citation Envoy� par guillaume07 Voir le message
    dans le lien donn� par gl, il y est fait mention que les _ en d�but de variable �tait reserv� par le compilo ?? exception faite si c'est une minuscule qui suit...comment dire, �a me parait �trange comme r�gle , quelqu'un pour infirmer/confirmer ?
    Oui, cf. quels sont les identificateurs interdits par la norme.

    MAT.

  7. #7
    Membre tr�s actif
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    688
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 688
    Par d�faut
    THANKS!

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. convention de nommage des variables
    Par Tanebisse dans le forum G�n�ral JavaScript
    R�ponses: 8
    Dernier message: 20/03/2009, 09h17
  2. [POO] D�finition des variables membre static
    Par Aur�lienB dans le forum Langage
    R�ponses: 13
    Dernier message: 18/02/2008, 11h39
  3. R�ponses: 3
    Dernier message: 07/12/2006, 12h23
  4. R�ponses: 7
    Dernier message: 13/09/2006, 16h05
  5. [Convention]Préfixage des noms de variables
    Par javaSudOuest dans le forum Langage
    R�ponses: 5
    Dernier message: 18/11/2005, 15h52

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