AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Daten in Klassen und Records speichern. Zugriffsproblem über mehrere Units
Thema durchsuchen
Ansicht
Themen-Optionen

Daten in Klassen und Records speichern. Zugriffsproblem über mehrere Units

Ein Thema von DieDolly · begonnen am 28. Sep 2018 · letzter Beitrag vom 29. Sep 2018
 
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#1

Daten in Klassen und Records speichern. Zugriffsproblem über mehrere Units

  Alt 28. Sep 2018, 22:33
Ich kann leider keinen Code schicken, das direkt gesagt. Aber ich erkläre alles so gut ich kann.

Ich habe eine Inidatei mit mehreren Sections drin.
Beim Programmstart lege ich für jede Section eine Klasseninstanz an.
Aktuell sind alle Properties in einer einzigen Unit, in der die Klassendefinition drin steht. Getter und Setter habe ich keine. Read und Write geht direkt auf die Feldvariable.
Das bin ich gerade am ändern und habe diese Unit in mehrere kleine aufgeteilt.

Und jetzt kommt mein Problem.

Pseudocode:
- InstanzVariable := TKlasse.Create;
- InstanzVariable.OptionenA.Modus := <ModusXY>;
- InstanzVariable.OptionenB.Datum := <Timestamp von irgendwann>;
<füge InstanzVariable einer generischen TList hinzu>

OptionenA und OptionenB sind in der Klassendefinition von TKlasse so deklariert
Delphi-Quellcode:
public
  OptionenA: TOptionenA;
  OptionenB: TOptionenB;
TOptionenB steht wieder in einer Extradatei etwa so. TOptionenA ist gleich.
Delphi-Quellcode:
type
 TOptionenB = record
 private
  FDatum: Int64;

  procedure SetDatum(const Value: Int64);
 public
  property Datum: Int64 read FDatum write SetDatum;
 end;

implementation

procedure TOptionenB.SetDatum(const Value: Int64);
begin
 FDatum := Value;

 // XXXXXXXXXXXXXXXXXXXXXX
end;
Und genau da wo XXXXX... steht, habe ich ein Problem. Hier müsste ich auf Modus aus OptionenA der selben Klasseninstanz zugreifen.

Nur wie mache ich das am besten? Ich könnte ganz einfach einen Index in OptionenB hinterlegen und dann damit auf die Liste zugreifen in der alle Instanzen liegen.
Aber das sieht für mich fehleranfällig aus.
  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 15:52 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 by Thomas Breitkreuz