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 :

string en argument


Sujet :

C++

Vue hybride

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 23
    Par défaut string en argument
    Bonjour,

    Voici mon problème, j'aimerais ouvrir un fichier dont le nom du fichier est contenu dans une variable string :

    string temp;
    temp="c:/test.dat";
    ifstream file(temp);
    mais il me sort l'erreur "18 no matching function for call to `std::basic_ifstream<char, std::char_traits<char> >::basic_ifstream(std::string&)'"

    alors que :

    ifstream file("c:/test.dat");
    marche parfaitement.

    J'aimerais savoir quelle est la différence entre les 2 codes et pourquoi le premier ne marche pas.

    Merci beaucoup

  2. #2
    Membre Expert Avatar de Trademark
    Profil pro
    Inscrit en
    Février 2009
    Messages
    762
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 762
    Par défaut
    C'est parce que dans le premier tu lui passes un string et dans le deuxième un const char* et que lui, il n'accepte que les const char*.

    Donc tu peux simplement faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    string temp ="c:/test.dat";
    ifstream file(temp.c_str());
    "c_str" te retourne la chaine char* constante de l'objet string temp.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 23
    Par défaut
    ça marche, merci beaucoup Trademark.

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 21/03/2008, 12h24
  2. comment passer un string en argument
    Par maxim2007 dans le forum C++
    Réponses: 2
    Dernier message: 23/11/2007, 02h08
  3. Passage d'une String[] en argument.
    Par Empty_body dans le forum Langage
    Réponses: 3
    Dernier message: 08/03/2007, 14h41
  4. String en argument
    Par TheShade dans le forum C++
    Réponses: 2
    Dernier message: 12/02/2007, 21h01
  5. Tableau de string en argument
    Par Tymk dans le forum C++
    Réponses: 4
    Dernier message: 10/09/2006, 15h32

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