Gå til innhold

Anbefalte innlegg

Hei igjen.

 

Jeg har opprettet en klasse i Delphi.

 

Det jeg lurte på er om en må ha konstruktør og destruktør for klassen. Jeg vet at i Java dersom man utelate dette så blir det lagt automatisk default konstrukrører. Hva med Delphi?

 

Hva skjer dersom man utelate dette i Delpih? Blir klassen ikke frigjort?

Man bør vel alltid ha konstruktør og en destruktør i en klasse?

 

takk... :)

Lenke til kommentar
Videoannonse
Annonse

constructoren er stedet å opprette private data. F.eks. hvis du har en klasse som inneholder en TList med ett eller annet, så må jo denne listen opprettes en gang. Da er constructoren stedet.

 


 TMyClass = class

 public

   ...

   constructor create;

 end;



constructor create;

begin

 inherited;

 FList := TList.Create;

end;

 

Så må jo listen frigjøres en gang, og da er destructoren rette stedet:

 


 TMyClass = class

 public

   ...

   destructor Destroy; override;

 end;



destructor Destroy;

begin

 FList.free;

 inherited;

end;

 

Legg merke til at destructor'n overrides, men det gjør ikke constructoren dette kommer av at constructoren er deklarert som virtual i TObject.

 

-Vegar

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...