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]