p
u
b
l
i
c
i
t
é
publicité
  1. #21
    Membre expérimenté Avatar de LinuxUser
    Inscrit en
    avril 2007
    Messages
    846
    Détails du profil
    Informations forums :
    Inscription : avril 2007
    Messages : 846
    Points : 576
    Points
    576

    Par défaut

    Quand tu dis toute la classe, tu veux dire .h+.cpp, si on a
    Foo.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class Foo
    {
    private:
      static const double m_m;
    };
    Et
    Foo.cpp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // faut mettre static ou pas
    // quelle est la difference si on le met ou pas sachant que m_m est déclarée dan Foo.h?
    static const double Foo::m_m = 3.14;

  2. #22
    Expert Confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2011
    Messages
    1 256
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 256
    Points : 2 577
    Points
    2 577

    Par défaut

    Citation Envoyé par LinuxUser Voir le message
    J'avais pensé installer et tester avec Cygwin, parcontre je savais pas que visual studio ne suivait pas entierement C++11, merci pour l'info.
    tu ne savais pas qu'utiliser les mots VS et normes dans une même phrase ça n'est pas logique ?

    Plus sérieusement, tu as quelle version ? Microsoft respecte de plus en plus la(es) norme(s) dans ses nouvelles versions.

  3. #23
    Membre expérimenté Avatar de LinuxUser
    Inscrit en
    avril 2007
    Messages
    846
    Détails du profil
    Informations forums :
    Inscription : avril 2007
    Messages : 846
    Points : 576
    Points
    576

    Par défaut

    VS 2010 il me semble, c'est la première fois quej'utilise VS.

    HS: serais-tu fan du rappeur Mala ?

  4. #24
    Expert Confirmé Sénior

    Avatar de Neckara
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2011
    Messages
    5 480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 5 480
    Points : 16 238
    Points
    16 238

    Par défaut

    Donc dans le .cpp, il ne faut pas mettre 'static'.

    Ce qui suit sont des suppositions, je n'ai jamais vraiment essayé de faire ça :

    La différence, c'est que la variable va être visible uniquement dans les méthodes contenues foo.cpp au lieu d'être visible dans toute la classe.

    On ne pourra donc pas mettre l'attribut constant et statique en public si on le met en static lors de la définition.

    On ne pourra pas non-plus l'utiliser dans des méthodes templates, inlines ou définies dans l'header.
    On dit "chiffrer" pas "crypter" !

    On dit "bibliothèque" pas "librairie" !

    Ma page DVP : http://neckara.developpez.com/

  5. #25
    Membre expérimenté Avatar de LinuxUser
    Inscrit en
    avril 2007
    Messages
    846
    Détails du profil
    Informations forums :
    Inscription : avril 2007
    Messages : 846
    Points : 576
    Points
    576

    Par défaut

    Citation Envoyé par Neckara Voir le message
    Donc dans le .cpp, il ne faut pas mettre 'static'.

    Ce qui suit sont des suppositions, je n'ai jamais vraiment essayé de faire ça :

    La différence, c'est que la variable va être visible uniquement dans les méthodes contenues foo.cpp au lieu d'être visible dans toute la classe.
    OK, j'ai compris à présent la subtilité.
    Citation Envoyé par Neckara Voir le message
    On ne pourra donc pas mettre l'attribut constant et statique en public si on le met en static lors de la définition.
    OK, en l'occurence ici le memebre est private, mais je vois ce que tu beux dire.
    Citation Envoyé par Neckara Voir le message
    On ne pourra pas non-plus l'utiliser dans des méthodes templates, inlines ou définies dans l'header.
    Parcontre pas compris là .

  6. #26
    Expert Confirmé Sénior

    Avatar de Neckara
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2011
    Messages
    5 480
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : décembre 2011
    Messages : 5 480
    Points : 16 238
    Points
    16 238

    Par défaut

    Dans le cas de méthodes inlines/templates, le compilateur ne va se baser que sur l'header.
    Or, l'attribut étant statique au fichier .cpp, je pense que tu auras une erreur lors du linkage.

    Après je pense que la meilleure façon de comprendre est de tester
    On dit "chiffrer" pas "crypter" !

    On dit "bibliothèque" pas "librairie" !

    Ma page DVP : http://neckara.developpez.com/

  7. #27
    Membre expérimenté Avatar de LinuxUser
    Inscrit en
    avril 2007
    Messages
    846
    Détails du profil
    Informations forums :
    Inscription : avril 2007
    Messages : 846
    Points : 576
    Points
    576

    Par défaut

    OK, merci pour tout.

  8. #28
    Expert Confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    décembre 2011
    Messages
    1 256
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : décembre 2011
    Messages : 1 256
    Points : 2 577
    Points
    2 577

    Par défaut

    Citation Envoyé par LinuxUser Voir le message
    HS: serais-tu fan du rappeur Mala ?
    euh... non, pur coïncidence.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Initialisation de membre static
    Par Derfh dans le forum C++
    Réponses: 3
    Dernier message: 02/12/2014, 08h47
  2. Initialisation d'un membre static const
    Par la_urre dans le forum Langage
    Réponses: 4
    Dernier message: 07/10/2010, 10h31
  3. [POO] Définition des variables membre static
    Par AurélienB dans le forum Syntaxe
    Réponses: 13
    Dernier message: 18/02/2008, 11h39
  4. Initialisation de membres static const
    Par NiamorH dans le forum C++
    Réponses: 16
    Dernier message: 14/01/2008, 16h50
  5. Réponses: 2
    Dernier message: 30/10/2006, 16h40

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