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 :

probleme de definition de fonction template


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut probleme de definition de fonction template
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    template<class T>
    bool sort_with_tab(typename vector<vector<T> > *tab_recepteur, vector<typename Tcomparison<T> > *tab_comp)
    {...}
    voila j'arrive pas a trouver ou est mon erreur si quelqu'un peut m'eclairer


    comme erreur j'ai un:
    expected nested-name-specifier
    expected '(' before '*' token

    et plein d'autre truc

    merci.

  2. #2
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    Qu'est ce que c'est : Tcomparison<T> ? Une fonction avec type de retour T ? un objet T::comparison ? ou c'est aussi dans le namespace std ?

    A priori le premier typename devant vector n'est pas utile. Le deuxième l'est si c'est bien T::comparison.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut
    Tcomparison est une classe template

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    template<class T>
    class Tcomparison
    {...}
    si jamais j'enleve le premier typename j'ai comme erreur:
    template argument 1 is invalid
    template argument 2 is invalid
    ...

    mais de toute fasson les typename comme j'les est placer peuvent pas etre nefaste, non ?

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Mai 2005
    Messages : 92
    Par défaut
    Le erreurs que tu obtiens quand tu enlèves le premier typename concernent certainement le second, qui est en trop. Es-tu sûr que ça ne fonctionne pas quand tu les enlèves tous les deux?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 27
    Par défaut
    euh si oO, pourtant j'pensait deja avoir deja testé
    merci !
    ( j'ai pas du bien comprendre s'que fesai typename enfaite)

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Par défaut
    Ca sert quand tu veux indiquer un type par l'intermédiaire d'un autre type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    class machin {
       typedef int x;
    }
     
    template<class T>
    class truc {
       typedef typename T::x y;
    }
    Oui je sais, on se dit que c'est bizarre et qu'il y aurait surement moyen de s'en passer

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

Discussions similaires

  1. declaration et definition de fonction template
    Par Nono Sto dans le forum Débuter
    Réponses: 3
    Dernier message: 29/05/2012, 13h38
  2. Réponses: 3
    Dernier message: 08/07/2008, 15h06
  3. fonctions template
    Par romeo9423 dans le forum Langage
    Réponses: 12
    Dernier message: 22/01/2005, 16h13
  4. Fonctions template+friend sous VC7
    Par patapetz dans le forum MFC
    Réponses: 12
    Dernier message: 24/09/2004, 11h16
  5. Réponses: 8
    Dernier message: 13/08/2004, 12h32

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