C++ Speicher für Feld reservieren

kle-ben

Erfahrenes Mitglied
Ahoi !

Ich hab da so ein kleines Problemchen. Ich brauche ein Feld weis
jedoch nicht wie groß das wird. Mein Prof meinte man kann mit
new irgendwie Speicher reservieren und das dann über Zeiger lösen.
Wenn das funktioniert wie würde das dann aussehen?

Gruß Benny
 
Das geht recht einfach:

Ein Feld vom Typ int:

// Zeiger definieren
int* pFeld = NULL;

// Speicher belegen (statt einem festen Wert kann auch eine Variable oder Ausdruck eingesetzt werden)
pFeld = new int[500];

// damit arbeiten
pFeld[0] = 17;

// wieder freigeben:
delete[] pFeld;

Beim Freigeben beachten: ein new mit [] MUSS mit delete[] freigegeben werden!
Statt int kann natürlich auch jeder andere Typ eingesetzt werden.
 
Du könntest vector Klassen verwenden oder Container oder du schreibst dir selbst etwas, was halt einfach z.B.: 100 Elemente reserviert und bei bedarf neuen speicher reserviert und den anderen wieder freigibt.
 
Zurück