AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Getter-Methode mit Parameter

Ein Thema von StepByStep · begonnen am 16. Mär 2017 · letzter Beitrag vom 20. Mär 2017
 
StepByStep

Registriert seit: 12. Nov 2014
Ort: Schleswig-Holstein
61 Beiträge
 
Delphi 7 Professional
 
#1

Getter-Methode mit Parameter

  Alt 16. Mär 2017, 08:22
Hallo liebe Delphianer,

ich habe eine kleine Frage zu Properties und ihren Getter- und Settermethoden. Selbstverständlich habe ich diese schon mal genutzt und bin mit dem Gebrauch vertraut, doch jetzt stehe ich vor einem Problem, welches ich zuvor noch nicht hatte und ich aus meiner Suche im Internet nicht ganz schlau werde.

Die Ausgangsstellung ist folgende:

Ich habe eine Property die wie folgendermaßen aussieht...

property AsString: string read GetAsString write SetAsString; In der GetAsString-Methode baue ich mir ein XML zusammen, in der SetAsString-Methode parse ich das XML auseinander. diese zwei Methoden sehen wie folgt aus...

Delphi-Quellcode:
function GetAsString: string;
procedure SetAsString(const Value: string);
Nun iteriere ich in der GetAsString-Methode eine Schleife durch, das ist soweit in Ordnung, aber ich möchte gerne das XML so bauen können, dass ich anhand einer TList<Integer> nur für bestimmte Indexstellen eine XML-Zeile schreibe, also dachte ich, dass ich der GetAsString-Methode eine TList<Integer> übergeben könnte. Das hatte ich gegoogelt und bin auf verschiedene Quellen gestoßen, sodass ich folgendes nun hätte, wovon ich nicht ganz sicher bin, ob es korrekt ist:

Delphi-Quellcode:
property AsString[AIndexList: TList<Integer>]: string read GetAsString write SetAsString
function GetAsString(AIndexList: TList<Integer> = nil): string;
procedure SetAsString(const Value: string);
Das wirft aber einen Fehler, es seien inkompatible Typen. Wenn ich lesen kann, dann vermute ich, dass die SetAsString-Methode ebenfalls diesen Array benötigt, richtig? Aber gibt es eine Möglichkeit der AsString-Property die Liste zu übergeben, sodass nur die GetAsString-Methode diese nutzt, weil in der SetAsString-Methode ist sie überflüssig. In der GetAsString-Methode ist diese Liste übrigens nur optional und muss nicht zwangsläufig übergeben werden.

Der Aufruf der Property müsste demnach doch so lauten: .AsString[Liste] ?

Ich bedanke mich im Voraus schon einmal für die Antworten!

Gruß
Jan
Jan
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 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