Array vergrößern



  • Kann man irgendwie wenn man z.B ein Array
    int *HUHU = new int[10];
    Das noch um einen Wert größermachen ohne alles zu löschen?



  • nein, du musst ein neues anlegen und die werte vom alten dann da reinkopieren...
    und dann das alte löschen...

    oder du nimmst einen container wie std::vector aus <vector> owai.



  • Genau,
    In C gab es realloc, das kannst du aber nicht auf Arrays anwenden die mit new erstellt wurden. Die Klassen der STL wie deque, vector etc. kümmern sich da ganz gut drum. Es lohnt also nicht extra neuen Speicher anzufordern, kopieren und dann den alten freizugeben. Mit std::vector bist du immer auf der sicheren Seite...


Anmelden zum Antworten