![]() |
AW: [XE2] Live Bindings
Zitat:
Delphi-Quellcode:
deklariert sein, TInterfacedObject z.B. gibt einen RTTI- Fehler.
class(TInterfacedPersistent, INotifyPropertyChanged)
|
AW: [XE2] Live Bindings
Zitat:
|
AW: [XE2] Live Bindings
Zitat:
BTW, bist Du schon mit dem StringGrid-DataBinding einen Schritt weiter? |
AW: [XE2] Live Bindings
Zitat:
Zitat:
|
AW: [XE2] Live Bindings
Zitat:
|
AW: [XE2] Live Bindings
Zitat:
|
AW: [XE2] Live Bindings
Zitat:
Delphi-Quellcode:
procedure Test(i: IInterface);
begin end; var o: TInterfacedObject; begin o := TInterfacedObject.Create; Test(o); // Objekt wurde freigegeben, da RefCount auf Null gesunken ist end; |
AW: [XE2] Live Bindings
Vielleicht sollte man den Aufruf korrekt durchführen?
Delphi-Quellcode:
procedure Test(i: IInterface);
begin end; var o: TInterfacedObject; begin o := TInterfacedObject.Create; Test(o as IInterface); //<- RefCount wird automatisch erhöht //Objekt "lebt" noch! end; |
AW: [XE2] Live Bindings
Das mag zwar das korrekte Ergebnis liefern, ist aber extremst unintuitiv.
|
AW: [XE2] Live Bindings
Eine korrekte Programmierung ist "extremst unintuitiv" und eine falsche Handhabung führt zur Schlußfolgerung "Ich dachte, das sei allgemein bekannt, dass man Objekte und referenzgezählte Interfaces nicht vermischen sollte. Das ist der Preis der non GC Sprache."
:gruebel: Ich habe den Eindruck, daß einige Leute gar nicht mehr ohne "Compiler-Magie" leben können und wenn diese mal versagt, kommt gleich das große Gezetere und der Hinweis darauf, wie toll das andere Sprachen hinbekommen... :lol: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:03 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