![]() |
AW: ist ein custom write möglich?
Zitat:
|
AW: ist ein custom write möglich?
Hallo,
naaa ;) Ich kann dann ja so schöne Sätze coden wie
Delphi-Quellcode:
anstatt zu schreiben
if not Table.Active then
begin Table.Active:= True; end;
Delphi-Quellcode:
Und die Published Properties kann ich im Object-Inspector setzen und in der DFM mit speichern.
if not Table.GetActive then
begin Table.SetActive(True); end; |
AW: ist ein custom write möglich?
Zitat:
a) damit zusammenkommt was zusammengehört und b) das mit dem MMX eh das schneller geht als ohne property |
AW: ist ein custom write möglich?
Zitat:
|
AW: ist ein custom write möglich?
Zitat:
Zitat:
Zitat:
Zitat:
|
AW: ist ein custom write möglich?
Mit alt hat das nichts zu tun. Ich sehe nur echt keine Daseinsberechtigung in Delphi. Dass es in C++ Properties gibt wäre mir jetzt neu. C# hat auch Properties, hier sind sie aber wenigstens nicht so sinnlos wie in Delphi.
Beispielsweise sehe ich in der IDE ob ich eine Property setzen darf und nicht erst wenn der Compiler mir das um die Ohren wirft. Oder ich kann, wie man es mit getter- und setter-Methoden sowieso kann, eine Property
Delphi-Quellcode:
lesbar, aber z.B. nur
public
Delphi-Quellcode:
schreibbar machen.
protected
Außerdem gibt es beispielsweise ![]() Aber in C# kann man leider auch keine Properties als ref/out-Parameter übergeben, das ist schade. |
AW: ist ein custom write möglich?
Zitat:
|
AW: ist ein custom write möglich?
Hallo,
Zitat:
Zitat:
Delphi-Quellcode:
Der lesende Zugriff auf
type
TTest= class strict private fMyValue: Boolean; procedure SetMyValue(const aMyValue: Boolean); public property MyValue: Boolean read fMyValue write SetMyValue; end; var Test: TTest;
Delphi-Quellcode:
ist wesentlich performanter und ressourcenschonender als ein
Test.MyValue
Delphi-Quellcode:
, weil der Compiler durch das Feld im read aus dem
Test.GetMyValue
Delphi-Quellcode:
dabei ein schlankes
Test.MyValue
Delphi-Quellcode:
macht.
Test.fMyValue
Zitat:
Delphi-Quellcode:
property TmpTmp: Boolean read Schöne write Schlecht;
Denn wer bringt dem Compiler bei, dass deine GetXXX / SetXXX immer mit Get / Set anfangen müssen und XXX bei beiden gleich sein muss? Und vor allem wie? Auch und dann der Objektinspektor, den es ohne Properties bestimmt nicht geben würde. Zitat:
Zitat:
Zitat:
Delphi-Quellcode:
Wieso soll ich nochmal so viel Unnützes tippen? Da stelle ich doch lieber mal eine Frage zur Anregung. Wieso kann der Compiler aus dem gut lesbaren
var vTmp: Boolean;
begin vTmp:= Test.GetMyValue; DoTest(vTmp); Test.SetMyValue(vTmp);
Delphi-Quellcode:
nicht selbstständig ein schönes
DoTest(Test.MyValue)
Delphi-Quellcode:
machen?
var Dummy= Test.fMyValue;
DoTest(Dummy); Test.SetMyValue(Dummy); Und schöne wäre bei Parametern auch ein
Delphi-Quellcode:
,
property var
Delphi-Quellcode:
,
property const
Delphi-Quellcode:
und
property out
Delphi-Quellcode:
. Dann soll ebbend eine Referenz aufs Property rein gegeben werden und nicht nur der Wert rein/raus.
property in
Zitat:
|
AW: ist ein custom write möglich?
Zitat:
![]() Zitat:
Delphi-Quellcode:
markieren zu können. Aber geht nunmal nicht.
deprecated
Zitat:
Delphi-Quellcode:
-Parameter als Zeiger übergeben werden und ein Zeiger auf ein Methodenergebnis nunmal nicht weiterverwertbar ist. Es sind halt keine Variablen.
var
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:48 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