Forum: Object-Pascal / Delphi-Language
Delphi
by DeddyH,
3. Mär 2017
Kombinier doch einfach alles:
type
TDingens = class
private
FTablenames: TStringList;
function GetInternalTablenames: TStringList;
function GetTablenames(Index: integer): string;
function GetTablenameCount: integer;
property InternalTablenames: TStringList read GetInternalTablenames;
public
Forum: Object-Pascal / Delphi-Language
Delphi
by DeddyH,
3. Mär 2017
Damit es Ruhe hat:
type
TDingens = class
private
FTablenames: TStringList;
function GetTablenames(Index: integer): string;
function GetTablenameCount: integer;
public
constructor Create;
destructor Destroy; override;
Forum: Object-Pascal / Delphi-Language
Delphi
by DeddyH,
2. Mär 2017
Naja, wer das tut, ist ja selber Schuld. Oder gibst Du z.B. TComboBox.Items auch frei? ;)
Forum: Object-Pascal / Delphi-Language
Delphi
by DeddyH,
2. Mär 2017
Ich würde vermutlich Lazy Initialization benutzen: ein privates Feld vom Typ TStrings oder gleich TStringList. Stellt der Getter nun beim ersten Aufruf fest, dass das Feld noch nil ist, erzeugt er die Liste und befüllt sie. Zum Schluss gibt er dann einfach das Feld zurück, was dann in jedem Fall eine gültige Instanz enthalten sollte. Jeder weitere Getter-Aufruf geht dann schneller, weil die...