![]() |
type deklaration mit var - Zuweisung
Hallo,
ich beiße mich gerade wieder an einem kleinen Problem fest und fast die Zähne aus. Sicherlich ist diese Frage schon oft aufgetreten, aber ich weiß nicht, wonach ich suchen muss. Wenn ich in einer Unit einen Type (2) als Record eines Types (1) deklariere und diesen Type (2) dann einer Variablen zuweise, ist es hier gleich möglich die Variable zu füllen?
Delphi-Quellcode:
Ist das möglich?
unit testunit;
interface type TMeinType1 = record A : Integer; B : Integer; end; type TMeinType2 = record C : TArray<TMeinType1>; end; const EinBeispiel1 : TMeinType1 = (A:1; B:2); EinBeispiel2 : TMeinType1 = (A:10; B:20); EinBeispiel3 : TMeinType1 = (A:100; B:200); var MeineVariable : TMeinType2; // Hier würde ich gerne die Konstanten direkt hinterlegen, nicht erst später in einer procedure oder function implementation end. LG Mathias |
AW: type deklaration mit var - Zuweisung
Nein, das geht nicht, da der Compiler die Record-Konstanten nicht als echte Konstanten zulässt. Es gibt verschiedene Einträge in QP für eine Erweiterung des Compilers in diesem Punkt.
|
AW: type deklaration mit var - Zuweisung
Zitat:
Eventuell habe ich mich falsch ausgedrückt. Ich möchte nicht die Konstanten in der Variable als Konstante hinterlegen, sondern die Konstanten schon vordefinieren, damit ich später nicht erst das Array erstellen und zuweisen muss. Als einfaches Beispiel:
Delphi-Quellcode:
So in der Art würde ich das gerne mit den Konstanten machen.
const
test: array[0..3] of string = ('A', 'B', 'C','D'); LG Mathias |
AW: type deklaration mit var - Zuweisung
Leider nein - siehe
![]() |
AW: type deklaration mit var - Zuweisung
Hallo Mathias,
Du könntest Deiner Unit am Ende einen Abschnitt
Delphi-Quellcode:
hinzufügen und mittels einer Procedure in diesem Initialization-Abschnitt den Record vorbelegen. Das wäre der Ersatz für die fehlende direkte Möglichkeit.
Initialization
Gruß, Andreas |
AW: type deklaration mit var - Zuweisung
Zitat:
Das macht es leichter, es in der Unit zu kapseln :-) LG Mathias |
AW: type deklaration mit var - Zuweisung
Initialization, Class Constructor und sogar die Managed Records (class operator Initialize) sind hier möglich.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 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