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 d'inclusion


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 25
    Par défaut probleme d'inclusion
    Bonsoir
    J'ai un programme utilisant un fichier .h.
    J'obtiens une erreur à la compilation m'indiquant que la seconde fonction générique devrait etre une fonction ou une classe(???).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    #include <sstream>
    #include<string>
     
    template<class T,class U> void conversion(T t,U &res) {
            istringstream is(t);
            is>>res;
    }
    template<class T> string nbr_to_string(T t) {
            string res;
            ostringstream sortie;
            sortie<<t;
            res=sortie.str();
            return res;
    }
    Par hasard j'ai rajouté à ce code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #include<iostream>
    using namespace std;
    Il se trouve que alors mon programme compile bien.
    Une partie de mon code utilise donc cette inclusion.
    Mais je ne comprend pas laquelle.
    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Et si tu nous donnais le message d'erreur complet et la ligne incriminée ?

    En tout cas il manque bien une référence à l'espace de noms std dans ton en-tête, il faudrait préfixer par std:: tout ce qui devrait l'être -- à moins bien sûr que tu n'aies pas donné le code complet.

    La directive "using namespace std" est à éviter dans un en-tête, cela brise totalement l'interêt des espaces de noms .

  3. #3
    Membre averti
    Inscrit en
    Septembre 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 25
    Par défaut
    Merci Loulou
    le message d'erreur:
    error ligne9:templates must be classes or functions
    error ligne9eclaration syntaxe error
    Loulou a dit
    En tout cas il manque bien une référence à l'espace de noms std dans ton en-tête
    Oui mais pourquoi et ou je l'utilise ici?

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Tout ce qui sort de <string> ou <sstream> appartient à l'espace de noms std, donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    template<class T,class U> void conversion(T t,U &res) {
            std::istringstream is(t);
            is>>res;
    }
    template<class T> std::string nbr_to_string(T t) {
            std::string res;
            std::ostringstream sortie;
            sortie<<t;
            res=sortie.str();
            return res;
    }

  5. #5
    Membre averti
    Inscrit en
    Septembre 2004
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 25
    Par défaut
    Merci beaucoup!

  6. #6
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651

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

Discussions similaires

  1. Probleme d'inclusion d'un container d'une classe dans une autre
    Par Tavarez59 dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 30/03/2007, 22h41
  2. probleme d'inclusion multiple
    Par chrono23 dans le forum C++
    Réponses: 3
    Dernier message: 02/11/2006, 10h30
  3. probleme d'inclusions multiple
    Par porco dans le forum C++
    Réponses: 4
    Dernier message: 10/10/2006, 10h08
  4. Problème d'inclusion de code Assembleur dans du C
    Par tnarol dans le forum x86 32-bits / 64-bits
    Réponses: 5
    Dernier message: 06/09/2006, 18h56
  5. Probleme d'inclusions
    Par Trillian dans le forum C
    Réponses: 6
    Dernier message: 08/04/2006, 11h56

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