28. december 2001 - 22:03Der er
3 kommentarer og 1 løsning
slette class
lad os nu sige jeg har en class der fx hedder \'account\', og laver en: account test;
hvordan sletter jeg nu test ? jeg ved godt hvordan man gør hvis man bruger pointers, men hvordan gør jeg her ... og kan det også bruges med normalt data types ?
Det er derfor man bruger pointer objekter for så deleter man dem så de ikke bruger plads
men ved ikke lige hvorfor du vil slatte test men der er også den mulighed at du kan bruge en destructor
class account{ private: xxxxx xxxxxx public: account(){} // constructor, kaldes når et objekt oprettes ~account(){her kan du så ligge noget kode som feks lukker en fil eller database} // destructor, kaldes når et pbjekt skal nedlægges }
Et objekt du opretter UDEN brug af new findes på processens stack, altså et stykke memory der tilhører processen. Objektet eksisterer indtil stacken \"unvindes\" så meget at det går ud af \"scope\".
Fx: void func() { obj o; { obj o2; } // efter denne linie findes o2 ikke længere på stacken } // efter denne linie findes o ikke længere på stacken
Hvis et objekt derimod oprettes med new-operatoren, ligger det på heap\'en og sakl explicit frigives med delete.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.