char* löschen
-
Hallo sagen wir ich habe
char * text = new char[100]; tolles_object->merk_dir_den_zeiger_auf(text); //irgendwo und irgendwann ganz anderes aber später char * geholter_text = tolles_object->gib_mir_text_pointer(); delete geholter_text;Woher weiß delete wieviel speicher er freigeben darf? Der Pointer hat doch gar keine Information mehr über die Länge des Arrays?
Danke
-
deleteweiss es nicht. Deshalb sollst du auchdelete[]verwenden.Letzteres hat das nötige Wissen, weil von der Laufzeitumgebung Informationen über die angeforderten Speicherbereiche gesammelt werden.