Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Setter in Delphi
LonghornUser - Do 01.04.10 17:37
Titel: Setter in Delphi
Hallo,
aus Java kennt man ja diese Syntax für einen Setter:
Quelltext
1: 2: 3:
| void setInfos(Infos infos) { this.infos := infos; } |
In Delphi wollte ich dies nun übernehmen:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TBuild.setInfos(infos: TInfos); begin Form.infos := infos; end; |
Nur leider scheint das rechte "infos" in Zeile 3 nicht das "infos" aus Zeile 1 zu sein, sondern eher das private Attribut der Klasse "Form", also Form.infos. Werden hier andere Sichtbarkeiten verwendet als in Java? Steht hier ein privates Attribut über einem Wertparameter in der Priorisierung?
Falls ja, wie löse ich dann das Problem, ohne den Wertparameter umbenennen zu müssen?
Danke schon mal!
Ciao LHUser
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Do 01.04.2010 um 17:54
BenBE - Do 01.04.10 17:43
Delphi-Quelltext
1:
| property Infos Read FInfos write SetInfos; |
Und dann mit
If Infos <> FInfos then ...
Andreas L. - Do 01.04.10 17:45
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| TForm1 = class(TForm) private FInfos: TInfos; protected procedure SetInfos(Value: TInfos); published property Infos: TInfos read FInfos write SetInfos; end;
...
procedure TForm1.SetInfos(Value: TInfos); begin if FInfos <> Value then FInfos := Value; end; |
Gausi - Do 01.04.10 17:48
Um das dahinter mal zu sagen: Wenn man mit Properties arbeitet (und dann mit Settern und/oder Gettern), dann nimmt man dafür in der Regel eine private Variable, deren Name ein "f" voransteht. Das ist eine ähnliche Konvention wie das "T" bei Klassennamen.
Und den Parameter im Setter nenne ich meistens auch einfach "Value", oder mit "a" vorne, also hier "aInfo".
delfiphan - Do 01.04.10 23:11
Gausi hat folgendes geschrieben : |
Um das dahinter mal zu sagen: Wenn man mit Properties arbeitet (und dann mit Settern und/oder Gettern), dann nimmt man dafür in der Regel eine private Variable, deren Name ein "f" voransteht. Das ist eine ähnliche Konvention wie das "T" bei Klassennamen.
Und den Parameter im Setter nenne ich meistens auch einfach "Value", oder mit "a" vorne, also hier "aInfo". |
Borland macht jeweils ein grosses F und ein grosses A. Grundsätzlich wird praktisch alles gross angefangen, ausser Enums und reservierte Wörter.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!