![]() |
Delphi-Version: 5
Enumeration und Subrange Problem
Ich möchte Subranges verwenden, um Felder zu dimensionieren.
Hier mal ein kleines Beispiel
Delphi-Quellcode:
Ich bekomme für das Feld EnumArray2 die Fehlermeldung
unit SubRangeTest;
interface type TEnum1 = (enOne, enTwo, enThree, enFour, enFive); type TEnum2 = enTwo..enFour; var aEnum1 : TEnum1; aEnum2 : TEnum2; EnumArray1 : array[low(TEnum1)..high(TEnum1)] of integer; {kein Fehler} EnumArray2 : array[low(TEnum2)..high(TEnum2)] of integer; {kein Fehler} implementation initialization for aEnum1 := low(tEnum1) to high(TEnum1) do EnumArray1[aEnum1] := 0; {ok} for aEnum2 := low(tEnum2) to high(TEnum2) do EnumArray2[aEnum2] := 0; {Fehlermeldung : Inkommpatible Typen Enumeration und TEnum} end. Inkommpatible Typen Enumeration und TEnum Wie kann ich auf ein derart dimensioniertes Feld zugreifen? |
AW: Enumeration und Subrange Problem
Warum nicht so?
Delphi-Quellcode:
Dann geht es.
EnumArray1 : array[TEnum1] of integer; {kein Fehler}
EnumArray2 : array[TEnum2] of integer; {kein Fehler} PS: Bitte keinen Code in Unit-Initialisierungsabschnitten. Nichts hasse ich an Pascal mehr als diese Aberration. |
AW: Enumeration und Subrange Problem
besten Dank,
scheint zu funktionieren. Den Code habe ich hier nur zur Vereinfachung in den Initialisierungsteil geschrieben. Das ist nur ein sehr stark vereinfachtes Beispiel. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:10 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