![]() |
Unabhängige Eigenschaft in Record einbinden
Hi!
Ich habe ein Array, welches mit einem record "verknüpft" ist. Das heisst in diesem Fall, dass jedes Feld noch die "Eigenschaften" von dem Record hat (hier Status, X und Y). Ich möchte jetzt in diesem record aber gerne noch Eigenschaften verwenden, die "unabhängig" sind, also nicht mit jedem Feld verbunden sind. Wie kann ich das machen? Hier der Codeauszug:
Code:
Gruß Yheeky
type
Daten = record Status : Integer; X : Integer; Y : Integer; end; Felder = Array [1..2600] of Daten; |
Re: Unabhängige Eigenschaft in Record einbinden
Meinst du eine oder mehr Variablen, die jeden Typ annehmen können?
bla: Variant; |
Re: Unabhängige Eigenschaft in Record einbinden
Hi,
so richtig verstehe ich die Frage nicht, aber wenn ich Yheeky's Richtung folge hab ich noch Zeiger anzubieten. Gruß oki |
Re: Unabhängige Eigenschaft in Record einbinden
Delphi-Quellcode:
So wünschen!
TDaten = record
iStatus : Integer; iX : Integer; iY : Integer; end; TFelder iProp : Integer; aFelder : Array [1..2600] of Daten; end; |
Re: Unabhängige Eigenschaft in Record einbinden
@neolithos: Genau, sowas in der Art. Nun möchte ich, dass die Eigenschaft iProp auch gespeichert wird und nicht nur aFelder. Ich habe das noch so definiert:
Code:
Gruß Yheeky
Datei : File of TFelder;
Spielfeld : TFelder; |
Re: Unabhängige Eigenschaft in Record einbinden
Wird doch schon! iProp wird so mit gespeichert.
Doch ist die File of Methode MeinerMeinungNach leicht veraltet. TStream, TFileStream verwenden OOP bzw. Windows-Programmierer. |
Re: Unabhängige Eigenschaft in Record einbinden
Okay, jetzt funktioniert´s. Eben hatte ich da wohl noch was falsch gemacht.
Wie würde das denn mit TStream oder TFileStream aussehen? Danke schonmal bis hierhin. Gruß Yheeky |
Re: Unabhängige Eigenschaft in Record einbinden
Übrigens das gibt es bei Borland sein Turbo Vision
Bsp:
Delphi-Quellcode:
var f : TFileStream;
d : TData; f := TFileStream.Create('c:\text.dat', fmCreate); try f.Write(d, SizeOf(d)); finally f.Free; end; ODER in OOP:
Delphi-Quellcode:
Das ist nur ein anriss. Via solcher Konstruktionen kann man daten effectiv Bunkern. Vorallem mittels Version und Signatur-Informationen.
TData = class (???)
public constructor Load(stm : TStream); virtual; procedure Store(stm : TStream); virtual; // hiertrinn seht stm.Write end; TDataAbl = class (TData) public constructor Load(stm : TStream); override; procedure Store(stm : TStream); override; // hiertrinn seht // inherited; für vorgänger // stm.Write end; var oData : TData; procedure SaveToFile var f : TFileStream; f := TFileStream.Create('c:\text.dat', fmCreate); try oData.Write(d, SizeOf(d)); finally f.Free; end; procedure SaveToWasWesIch -> schreiben übers netz, Speicher oder in eine DB var f : TStream; f := T???.Create('c:\text.dat', fmCreate); try oData.Write(d, SizeOf(d)); finally f.Free; end; -> Es wird alles Binär betrachtet. |
Re: Unabhängige Eigenschaft in Record einbinden
Cool, danke!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:43 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