Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Free im Constructor erlaubt/möglich? (https://www.delphipraxis.net/130651-free-im-constructor-erlaubt-moeglich.html)

himitsu 12. Mär 2009 07:27

Re: Free im Constructor erlaubt/möglich?
 
Zitat:

Zitat von Muetze1
Wenn der Constructor eine Exception wirft, dann kommt es erst gar nicht mehr zur Zuweisung der Objektvariablen, weil er schon vorher aussteigt.

so meinte ich es doch :angel2:

drum könnte man, selbst wenn man wöllte mit "xy" im Except/Finally-Block nix anfangen und hätte dort womöglich sogar noch eine Exception bei .Free :stupid:
Delphi-Quellcode:
try
  xy := Txy.Create;
  ...
finally
  xy.Free;
end;

nja, das "Problem" ist ja zumindestens behoben :)

Muetze1 12. Mär 2009 07:54

Re: Free im Constructor erlaubt/möglich?
 
Zitat:

Zitat von himitsu
drum könnte man, selbst wenn man wöllte mit "xy" im Except/Finally-Block nix anfangen und hätte dort womöglich sogar noch eine Exception bei .Free :stupid:

Deshalb nutzt man try/finally auch so, wie Jaenicke in Beitrag #4 geschrieben hatte.

himitsu 12. Mär 2009 08:04

Re: Free im Constructor erlaubt/möglich?
 
Zitat:

Zitat von Muetze1
Zitat:

Zitat von himitsu
drum könnte man, selbst wenn man wöllte mit "xy" im Except/Finally-Block nix anfangen und hätte dort womöglich sogar noch eine Exception bei .Free :stupid:

Deshalb nutzt man try/finally auch so, wie Jaenicke in Beitrag #4 geschrieben hatte.

stümmt und ich meinte nur, das dieses aber kein Hinweis darauf ist, daß bei einer Exception im Konstruktor das "erstellte" Objekt auch freigegeben wird.

Wenn es nicht freigegeben würde, dann würde es dennoch nicht in dieser Variable drinstehen, da Dieser ja nichts zugewiesen wurde. :angel:

DP-Maintenance 12. Mär 2009 08:12

DP-Maintenance
 
Dieses Thema wurde von "Phoenix" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Das ist eine Frage zu Delphi an sich


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:21 Uhr.
Seite 2 von 2     12   

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