Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Exception beim create einer Form (https://www.delphipraxis.net/189863-exception-beim-create-einer-form.html)

idefix2 1. Aug 2016 12:31

Exception beim create einer Form
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo!, ich stehe wieder einmal völlig auf der Leitung. Vermutlich ist es eine Kleinigkeit, die ich übersehen habe, aber ich finde den Fehler nicht.

Ich überschreibe die Create Routine einer Form, um ein paar Initialisierungen zu machen. Beim Create der Form bekomme ich eine Exception.
Auffällig erscheint mir, dass es nicht möglich ist, Breakpoints in der überschreibenden Create-Routine zu setzen, da tut die IDE so, als wäre das toter Code, der wegoptimiert wird (zumindest interpretiere ich die Anzeige so, siehe Bild)

Der schöne Günther 1. Aug 2016 12:35

AW: Exception beim create einer Form
 
Es heißt
Delphi-Quellcode:
meineInstanz := TMeineKlasse.Create(..);
und nicht

Delphi-Quellcode:
meineInstanz.Create(..)
:cheers:

DeddyH 1. Aug 2016 12:36

AW: Exception beim create einer Form
 
Delphi-Quellcode:
var
  Dings: TDings;
begin
  Dings.Create; //Bumms
end;
vs.
Delphi-Quellcode:
var
  Dings: TDings;
begin
  Dings := TDings.Create; //Kein Bumms
end;

idefix2 1. Aug 2016 12:47

AW: Exception beim create einer Form
 
AAArghhh!

Ich schätze, mit dem Fehler habe ich im Laufe meiner Delphi Karriere schon etliche Dutzend Abstürze produziert, und jedesmal lange gesucht - Das will einfach nicht in meinen Schädel...

Danke, jetzt funktioniert das Programm, und Breakpoints in der Create-Routine gehen jetzt auch.

himitsu 1. Aug 2016 13:20

AW: Exception beim create einer Form
 
Aber wer Create unbingt als Mehode aufrufen will.....
Delphi-Quellcode:
var
  Dings: TDings;
begin
  Dings := TDings(TDings.NewInstance);
  Dings.Create;
end;

bra 1. Aug 2016 13:22

AW: Exception beim create einer Form
 
Mach dir nix draus, passiert mir auch immer wieder, da kommt doch wieder der C-Programmierer durch. :P

stahli 1. Aug 2016 13:57

AW: Exception beim create einer Form
 
Könnte man ja vielleicht auch mal Emba vorschlagen, dass der Compiler eine Warnung werfen sollte... (vielleicht, falls jemand sich ohnehin öfter in der QC herum treibt)

jaenicke 2. Aug 2016 03:22

AW: Exception beim create einer Form
 
Die Warnung sollte bereits kommen, so etwas wie Dings ist eventuell nicht initialisiert.

Denn es wird die Methode Create auf der Instanz in Variable Dings aufgerufen ohne dass diese Variable vorher einen Wert bekommen hat.

Wenn die Warnung nicht kommt, ist das entweder so eingestellt oder ein Bug.

Bemerken tut man diese Meldungen aber nur, wenn man konsequent immer alle Warnungen usw. beseitigt. Sonst geht die neue Meldung in den anderen unter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:24 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