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 :

Besoin explicite du this ?


Sujet :

Langage C++

  1. #1
    Membre émérite
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Points : 2 799
    Points
    2 799
    Par défaut Besoin explicite du this ?
    Bonjour,

    Soit le code suivant :

    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
    18
    19
    20
    21
    22
    23
    24
    25
     
    template<typename T>
    class A {
    public:
        int s() { return 1; };
    };
     
    template<typename T1, typename T2>
    class B : public A<T1>
    {
    protected:
        T2 a;
    public:
        int f() { 
          return s();  // NOK
          // return this->s();  //OK
          // return A<T1>::s(); // OK aussi
        }
    };
     
    int main()  {
      B<int, double> b;
      b.f();
      return 0;
    }
    Qu’est-ce qui justifie que « return s(); » ne compile pas ? (sachant que gcc comme clang me le refusent en tant que « non déclaré », ils ont probablement une bonne raison de le considérer).

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 012
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 012
    Points : 23 211
    Points
    23 211
    Par défaut
    Bonjour,

    La réponse à déjà été donnée ici :
    http://www.developpez.net/forums/d14...s/#post7661914

    Grosso-modo le compilateur ne peux pas savoir ce qu'il peut y avoir dans ta classe template pendant la compilation car tu peux toujours spécialiser ta classe template.

  3. #3
    Membre émérite
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Points : 2 799
    Points
    2 799
    Par défaut
    Merci

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 08/03/2010, 21h19
  2. Réponses: 2
    Dernier message: 24/04/2008, 15h31
  3. [Images] Besoin explicite du header ?
    Par gofono_bass dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 28/12/2005, 15h24
  4. Besoin d'aide pour l'I.A. d'un puissance 4
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 17h05

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