[ dusty @ 25.12.2006. 14:01 ] @
Pozdrav ljudi.

Imam strukturu cije je jedan od clanova objekat tipa CString. Od te strukture dinamicki kreiram niz, i zatim radim nesto sa clanicama niza i na kraju posla hocu da ih pocistim. Medjutim, ako koristim delete(pointerNaNiz); prijavljuje mi da je neispravna adresa.

Ako stavim da je taj clan strukture pointer na CString, i na kraju ih eksplicitno obrisem iz svih elemenata niza, a zatim obrisem niz, radi super.

Pitanje je kako da obrisem niz, a da ne moram da imam pointer na CString ?

Evo koda, da pokusam da ilustrujem na sta mislim.

Code:

struct _Test{
 int i;
 CString name;
};
.
.
.
int c = 5;
_Test *pTestArr = new _Test[c];
.
pTestArr[2]->name = _T("Pera");
.
delete(pTestArr);    //ovde me zeza



HVALA !
[ NastyBoy @ 25.12.2006. 14:13 ] @
CString chlan ce biti automatski obrisan kad obrishesh instancu strukture u kojoj se nalazi, ne morash to ruchno da odardjujesh.

Dobro bi bilo da pogledash josh jednom kako new/delete radi - ako neshto alocirash kao niz (new []) onda morash tako i da ga brishesh (delete [] xxx, umesto obichnog delete xxx).
[ Dragi Tata @ 25.12.2006. 17:13 ] @
Citat:
NastyBoy: Get and Set methods are evil. (Allen Holub)


Amin! A isto važi i za "properties".

@dusty: Moj uobičajeni savet u takvim situacijama: batali new-delete i koristi vector: http://www.novetehnologije.com/Default.aspx?tabid=65
[ NrmMyth @ 25.12.2006. 21:42 ] @
Citat:
Dragi Tata: Amin! A isto važi i za "properties".

@dusty: Moj uobičajeni savet u takvim situacijama: batali new-delete i koristi vector: http://www.novetehnologije.com/Default.aspx?tabid=65
Slazem se.
STL je mocno oruzje kojeg treba iskoristiti.