salut,
j'ai un problème :
dans une boucle (dont je ne connais pas à l'avance le nombre d'itérations), je remplis une multimap<int, const char*> avec la méthode insert().
seulement voila, à chaque tour de boucle, je veux mettre une chaine dans la multimap, et l'adresse du char* est la même, c'est le contenu à cette adresse qui change. donc forcément dans ma multimap toutes les valeures des champs sont identique puisque les pointeurs le sont (et donc la valeur est le contenu de l'adresse au dernier passage de boucle).
comment je peux faire pour à chaque fois recopier la chaine a un endroit ou elle ne sera pas détruite ? on ne peut pas dire à la hashmap que comme value, elle ne prend pas juste le pointeur mais recopie en mémoire et prend le pointeur de cette nouvelle zone mem ?
encore si je savais le nombre exact de boucles je pourrais allouer ce qu'il me faut, mais la je peux pas... et le problème si je fais un new à chaque tour, comment je peux libérer la mémoire en fin de programme ?
merci
ANT