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 :

Erreur de compilateur Templates et g++


Sujet :

C++

  1. #1
    Membre averti Avatar de BakaOnigiri
    Inscrit en
    Avril 2002
    Messages
    366
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 366
    Points : 437
    Points
    437
    Par défaut Erreur de compilateur Templates et g++
    Bonjour,

    j'ai un petit problème de compilateur avec g++ (version 4.4.3 sous fedora 12), dont voici un test reproductible :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    template <class T>
    class CTestT
    {
    public:
        static const char* s_Name;
    };
     
    const char* CTestT<int>::s_Name = "foo";
    Ligne de compilation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    g++ -Wall -o test Test.cpp
    Me donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Test.cpp:8: erreur: too few template-parameter-lists

    Cela semble être un bug dans g++, avez vous une idée du problème ?


    PS :

    g++ -v
    Utilisation des specs internes.
    Target: i686-redhat-linux
    Configuré avec: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch=i686 --build=i686-redhat-linux
    Modèle de thread: posix
    gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC)
    uname -a
    Linux xxxxx 2.6.32.11-99.fc12.i686.PAE #1 SMP Mon Apr 5 16:15:03 EDT 2010 i686 i686 i386 GNU/Linux

  2. #2
    Membre averti Avatar de Nogane
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    241
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 241
    Points : 323
    Points
    323
    Par défaut
    Bonsoir,
    La syntaxe correct est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    template <class T>
    class CTestT
    {
    public:
        static const char* s_Name;
    };
    
    template<>
    const char* CTestT<int>::s_Name = "foo";

  3. #3
    Membre averti Avatar de BakaOnigiri
    Inscrit en
    Avril 2002
    Messages
    366
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 366
    Points : 437
    Points
    437
    Par défaut
    C'est super !! merci beaucoup !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 02/11/2007, 13h28
  2. [XSLT] Débutant erreur sur déclaration template
    Par nagdrir dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 27/08/2007, 16h08
  3. erreur lib text::template fill_in
    Par bennneuh dans le forum Modules
    Réponses: 1
    Dernier message: 17/01/2006, 12h29
  4. Réponses: 4
    Dernier message: 31/03/2005, 17h55
  5. F1004 Erreur du compilateur interne
    Par psau dans le forum C++Builder
    Réponses: 2
    Dernier message: 15/09/2004, 16h12

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