webForumDet fria alternativet

Ta bort pekarearray?

2 svar · 185 visningar · startad av Andreas L

Andreas LMedlem sedan sep. 2000215 inlägg
#1

Hej! Hoppas någon kan hitta en enkel lösning på mitt problem.

om jag skapar en array av pekare vill jag sedan kunna "deletea" dom, men får tyvärr fel...

ObjA \*a\[2\];
a\[2\] = new ObjA ;
a\[2\]-\>doSomething(x);

allt fungerar som tänkt tills dess att jag vill använda delete på pekaren.

om jag inte skapar en array så går det bra att:

delete a;

men om de ligger en array så vet jag inte hur det ska vara. har provat med
delete [] a;
delete [] *a;

men inget verkar rätt.

Hur SKA det vara?

/tack på förhand

pimmeMedlem sedan sep. 20011 086 inlägg
#2
for(i = 0; i < 2; ++i)
    delete a[i]; 
delete[] a;
Andreas LMedlem sedan sep. 2000215 inlägg
#3

tack

kommer inte ihåg om jag provade just den modellen, men jag löste det genom att skapa arrayen såhär istället:

pp = new object[x];

och då fungerade det att bara skriva:

delete [] pp;

..höll på att bli tokig innan jag provad det! :)

126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)