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 :

Probleme sur modèle de fonction membre


Sujet :

C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 10
    Points : 10
    Points
    10
    Par défaut Probleme sur modèle de fonction membre
    Bonjour a tous,

    J'ai un probleme pour creer un modele de fonction membre.
    Mon compilo (gcc) me hurle :
    undefined reference to `void config::parser::test<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >()'

    Voici comment le tout est defini dans mon code :

    dans la definition de classe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    namespace config {
    	class parser {
    	public:
    		template<typename T>
    		void test();
             }
    }
    l'implementation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    template<typename T>
    void parser::test()
    {}
    et l'appel dans le main
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    config::parser c;
    c.test<std::string>();
    je joint le code sour en pièce jointe si quelqu'un veut tenter de le compiler.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expérimenté

    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
    Points : 1 543
    Points
    1 543
    Par défaut
    Salut,

    Tu ne peux pas séparer la définition de la déclaration d'une fonction template : il faut tout mettre dans le .h :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    namespace config {
    	class parser {
    	public:
    		template<typename T>
    		void test() {}
             }
    }
    Cf. cette entrée de la FAQ.

    MAT.

Discussions similaires

  1. [XL-2003] Probleme sur appel de fonction auto depuis une cellule faisant une affectation
    Par comme de bien entendu dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/05/2011, 12h43
  2. Probleme sur les fichiers (fonction fread)
    Par anoir dsr dans le forum C
    Réponses: 7
    Dernier message: 27/01/2011, 14h31
  3. probleme sur script php - espace membre
    Par new-dmx dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 11
    Dernier message: 27/06/2008, 09h52
  4. Réponses: 5
    Dernier message: 12/01/2005, 20h58
  5. Probleme sur une fonction vérif
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/10/2004, 13h25

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