Bonjour,
J'ai un problème de conversion de String en Const char* et je ne trouve pas la solution.
Donc dans une fonction, j'ai un String nommé originalName, je voudrais le convertir en const char* pour le transmettre à une fonction setName. Je fais donc :
J'ai tester aussi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 const char* name = originalName.c_str(); object.body->getNxActor()->setName( name );
Si juste après le setName, je fais un getName pour l'afficher:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 const char* name = originalName.data(); object.body->getNxActor()->setName( name );
il m'affiche correctement le nom de l'objet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part std::cout << object.body->getNxActor()->getName() << std::endl;
Par contre si je sort de ma fonction et que je l'appel par un autre moyen,
il m'affiche des sigles bizarres.
Le problème, c'est que si je mets en dur le nom :
ca marche impeccable. Donc j'imagine que je construit pas correctement mon const char* ? Ou que j'ai un problème de pointeur ? Je sais pas trop.
Code : Sélectionner tout - Visualiser dans une fenêtre à part object.body->getNxActor()->setName( "test" );
Je bloque si quelqu'un pouvait m'aiguiller s'il vous plait.
Merci.
Partager