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

SL & STL C++ Discussion :

les strings en C++ : quelle horreur !!! pb : param string


Sujet :

SL & STL C++

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 104
    Par défaut les strings en C++ : quelle horreur !!! pb : param string
    Bonjour, je suis un peu perdu quand je vois les types de string en C++ : cstring, std::string, char*, pstring !

    je voudrai declarer une string dans une classe la passer dans un constructeur pour pouvoir l'initialiser mais pas moyen ! je sais pas s'il faut utiliser des pointeurs ou pas ! Si qqn peut me filer une exemple generique, please !
    J'aimerai utiliser std::string car il me semble simple mais quelle est la diff avec les autres ? merci !

    mon code X.h :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    class X {
    std::string bobo;
     
    X(std::string arg); 
     
     
     
    mon code X.c :
     
    X::X(std string arg)
    { bobo = arg;}
     
    mon main :
     
    X exemple("abc");   --> il m'envoie chier
     
    ou
     
    std::string coco("abc");
    X exemple(coco);   --> il m'envoie chier
     
    ou
     
    std::string coco("abc");
    X exemple(&coco);   --> il m'envoie chier

    j'utilise visual c++ et l'erreur est : ambiguous call to overloaded function

    comprends pas !! merci a vous tous


    [Balises CODE rajoutées par Loulou24, merci d'y penser à l'avenir]

  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 : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    ambiguous call to overloaded function
    Ta classe X a plusieurs constructeurs ? Quelle(s) autre(s) fonction pose problème au compilo ? (il l'indique normalement)

    Bonjour, je suis un peu perdu quand je vois les types de string en C++ : cstring, std::string, char*, pstring !
    std::string est le seul type standard de chaines de caractères. Tu peux oublier les autres

    je voudrai declarer une string dans une classe la passer dans un constructeur pour pouvoir l'initialiser mais pas moyen ! je sais pas s'il faut utiliser des pointeurs ou pas ! Si qqn peut me filer une exemple generique, please !
    J'aimerai utiliser std::string car il me semble simple mais quelle est la diff avec les autres ? merci !
    http://c.developpez.com/faq/cpp/?page=strings

  3. #3
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    Ton X.cpp compile ?

  4. #4
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mon code X.c : 
     
    X::X(std string arg) 
    { bobo = arg;}
    2 truc bizarres.... ton code X.c.... cela devrait être .cpp !
    Cela peut avoir une importance suivant le compilateur.

    Sinon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    X::X(std::string arg) 
    { bobo = arg;}
    Il manquait :: si je ne m'abuse..

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    104
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 104
    Par défaut
    Le lien de Loulou a permis de me rendre compte de mes erreurs, merci a tous !!! ERREUR resolue ! Thanks

    PS : j'avais bien oublier de mettre cpp, ca craint ! (c'est l'erreur du debutant)

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

Discussions similaires

  1. Réponses: 17
    Dernier message: 23/12/2010, 07h43
  2. Réponses: 2
    Dernier message: 28/06/2010, 18h27
  3. Dimension temps : quelle clé dans les faits et sur quelle base ?
    Par mederik dans le forum Conception/Modélisation
    Réponses: 15
    Dernier message: 26/09/2008, 14h02
  4. [MySQL] Doublons quelle horreur
    Par lodan dans le forum PHP & Base de données
    Réponses: 49
    Dernier message: 08/08/2006, 08h03

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