AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Konstruktor von TObject

Ein Thema von guidok · begonnen am 14. Nov 2008 · letzter Beitrag vom 16. Nov 2008
Antwort Antwort
Seite 1 von 2  1 2      
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#1

Konstruktor von TObject

  Alt 14. Nov 2008, 10:03
Mal ne profane Frage, wenn ich mir den Konstruktor von TObject angucke, dann finde ich da nur folgendes:

Delphi-Quellcode:
constructor TObject.Create;
begin
end;
Erstelle ich nun eine Klasse, die von TObject abgeleitet ist, hat es dann irgendeinen Sinn "inherited" aufzurufen? Ebenso ist es beim Destruktor.

Gruß,

Guido
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 10:07
Unbedingt notwendig ist es m.E. nicht, da die Speicherallokierung automatisch geschieht.

Aber sinnvoll wenn du irgendwann mal nicht mehr von TObject ableitest vergisst du auch nicht dort inherited einzutragen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 10:12
That's compiler magic
Markus Kinzler
  Mit Zitat antworten Zitat
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#4

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 10:28
Zitat von mkinzler:
That's compiler magic
And that means?
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 10:30
Zitat von Bernhard Geyer:
Aber sinnvoll wenn du irgendwann mal nicht mehr von TObject ableitest vergisst du auch nicht dort inherited einzutragen.
Und dann gibt es ja noch diese Class helper. Wenn also jemand unter deinen Füßen TObject verändert...dann gehört er zwar mit diesen Füßen getreten. Aber genau dann ist ein inherited notwendig.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.481 Beiträge
 
Delphi 10.1 Berlin Professional
 
#6

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 10:57
Zitat von Bernhard Geyer:
Aber sinnvoll wenn du irgendwann mal nicht mehr von TObject ableitest vergisst du auch nicht dort inherited einzutragen.
Das passiert z.B. wenn man von TObject auf TInterfaceObject oder gar TInterfacedPersistent umstellt, weil man ein Interface (RefCounted bzw. Nicht RefCounted) implementieren möchte.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 12:00
Zitat von guidok:
Zitat von mkinzler:
That's compiler magic
And that means?
Das der zugeörige Code nicht im Quellcode steht sondern vom Compiler automatisch gemacht wird
Markus Kinzler
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Konstruktor von TObject

  Alt 14. Nov 2008, 16:06
Wenn man sich einen Konstruktor- oder einen Destruktor-Aufruf in der CPU-Ansicht ansieht, wird man feststellen, dass alle Konstruktoren und Destruktoren ein spezielles Vor- und Nachspiel haben. Im Konstruktor werden bedingt _ClassCreate (welches wiederum bedingt InitInstance aufruft) und _AfterConstruction (welches AfterConstruction aufruft) aufgerufen.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#9

Re: Konstruktor von TObject

  Alt 16. Nov 2008, 08:44
Danke, ich weiß jetzt bescheid.
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#10

Re: Konstruktor von TObject

  Alt 16. Nov 2008, 09:44
Muss man dennoch ein inherited im Create machen? Weil overriden kann man den Constructor ja nicht?

MfG
xZise
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz