![]() |
Create oder AfterConstruction überschreiben?
Hallo zusammen
Es ist ja üblich, in einer abgeleiteten Klasse den Konstruktor zu überschreiben, um dort Initialisierungen vorzunehmen und Objekte zu erstellen. Jedenfalls hab ich das immer so gemacht... Jetzt frage ich mich, ob es hierfür nicht mehr Sinn macht, die Methode AfterConstruction zu überschreiben, vorallem weil Create ja nicht virtuell ist. Analog Destroy und BeforeDestruction. Gibt es da irgendwelche Unterschiede zwischen diesen beiden Varianten? Welche ist zu bevorzugen? :gruebel: Gruss Shaman |
Re: Create oder AfterConstruction überschreiben?
Aarghh! Destroy ist schon bei TObject virtuell ;) Und Create kannst auch einfach virtuell machen.. Alle VCL-Komponenten haben virtuelle Konstruktoren. AfterCreation und BeforeDestruction sind eher für andere Dinge gedacht, die zur Initalisierung/Finalisierung gehören, aber nicht in den Konstruktor/Destruktor.
|
Re: Create oder AfterConstruction überschreiben?
Jepp, dass Destroy virtuell ist, ist schon klar, aber Create eben ursprünglich nicht. Stört mich eben ein wenig. :wink:
|
Re: Create oder AfterConstruction überschreiben?
Dann machs wie ich ;)
Delphi-Quellcode:
edit: später dann aber auch davon ableiten und nicht von TObject ;)
Type
TObjectEx = class public constructor Create; virtual; end; constructor TObjectEx.Create; begin inherited; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz