Je suis novice en C++. Que signifie exactement "nouveau" pour une collection ? Par exemple :
UnicodeStringList* tmp = new UnicodeStringList;
// where UnicodeStringList is typedef to std::list<UnicodeString>
Lorsque vous "créez" quelque chose, vous devez savoir exactement quelle taille il vous faut, n'est-ce pas ? Donc quand je utilise le constructeur d'affectation pour copier un objet, comment l'ordinateur saura-t-il quelle quantité de mémoire doit être allouée sur le tas ? Par exemple :
*tmp = another_string_list;
Une autre_string_list est copiée dans ma nouvelle UnicodeStringList dans la mémoire du tas, mais je n'ai jamais spécifié initialement la taille de cette mémoire du tas. Et le compilateur ne sait pas quelle est la taille d'une autre_string_list, donc combien de mémoire va dans le tas ?
Je suis confus et j'espère avoir suffisamment précisé ma question pour que quelqu'un puisse me comprendre, mais je ne suis pas sûr.
Veuillez m'aider
Merci,
Julian