PB convertion : String => Const char*

Résolu/Fermé
Sygfried Messages postés 6 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 11 mai 2007 - 30 mars 2007 à 10:02
Sygfried Messages postés 6 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 11 mai 2007 - 30 mars 2007 à 10:29
Bonjour,
Mon probleme ne concerne pas une banal conversion d'un string vers un const mais d'un string appartenant a une structure vers un const char.

Donc voici un exemple de strcuture

Fichier.h:

#ifndef SOUDURE
#define SOUDURE
#include <string>

class soudure
{
public:
struct var
{
string essai;
};
void GetData();

};
#endif


fichier.cpp

// je dois passer mon string a TiXmlTest qui ne prend que des const char* en variable. donc j'eu essayer de caster mon string en const char*:

msg->LinkEndChild( new TiXmlText (const_cast<char*>(a));

cependant a la compil il ya une erreur comme quoi quil ne peut convertir :

cannot convert from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' to 'char *'

Donc ma question est la suivante : Connaitriez vous un moyen de caster mon string en const char* ?

Merci par avance,
Sygfried
A voir également:

2 réponses

si tu veux des renseignements contacte moi sur mon adresse
0
Sygfried Messages postés 6 Date d'inscription jeudi 22 février 2007 Statut Membre Dernière intervention 11 mai 2007 1
30 mars 2007 à 10:29
Bon evidemment , jecherche comme une tanche pendant une journée sans rien trouver et sufit que je post pour trouver la solution :

Il faut pour cela passer l'adresse du string et préciser a partir d'ou:

exemple avec le TiXml de tt a l'heure:
Fichier.h:

#ifndef SOUDURE
#define SOUDURE
#include <string>

class soudure
{
public:
struct var
{
string essai;
};
void GetData();

};

struct var a;
#endif

msg->LinkEndChild( new TiXmlText ( &a.essai[0] );
0