Bon je reformate un peu mon message. Donc je souhaite récupérer une instance de std::string via une marco qui retourne une string (et pas un char* pour repondre au message précédent). J'écris:
std::string *str = new string(MACRO(parametres))
en utilisant le constructeur par copie. Ca ca marche. En revanche, si j'écris
std::string = MACRO(parametres)
ca plante, une alloc qui a pas été faite je présume mais en principe l'alloc a lieu dans la fonction MACRO. Peut-etre dois je déclarer ma variable comme étant une référence sur le retour de la fonction?
J'aimerais également pouvoir reattribuer ma variable str. J'ai testé
str = &(MACRO(nouveaux parametres))
mais ca plante aussi (mais pas tout le temps :s). Voila si vous avez qq idées et précisions à me fournir sur le fonctionnement précis de la classe String (je préfère la classe String de java
).
Partager