Difference between revisions of "Enum Type/de"

From Lazarus wiki
m
m
Line 10: Line 10:
 
Eigenschaft:<br>
 
Eigenschaft:<br>
 
Beim Datentyp '''Enum Type''' handelt es sich um eine Aufzählung ganzzahliger vorzeichenloser Konstanten.<br>
 
Beim Datentyp '''Enum Type''' handelt es sich um eine Aufzählung ganzzahliger vorzeichenloser Konstanten.<br>
Zusätzlich kann für den Datentyp mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer Datentyp festgelegt werden.<br>
+
Zusätzlich kann für den Datentyp mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer-Datentyp festgelegt werden.<br>
 
bei 0 .. 255 Zeichen die Schalter für den Datentyp [[Word/de|Word]]:<br>
 
bei 0 .. 255 Zeichen die Schalter für den Datentyp [[Word/de|Word]]:<br>
 
* {$Z2} oder {$PACKENUM 2}<br>
 
* {$Z2} oder {$PACKENUM 2}<br>
Line 17: Line 17:
 
bei 255 .. 65535 Zeichen ist der Datentyp Longword:<br>
 
bei 255 .. 65535 Zeichen ist der Datentyp Longword:<br>
 
* {$Z4} oder {$PACKENUM 4}<br><br>
 
* {$Z4} oder {$PACKENUM 4}<br><br>
Die Werte der Aufzählung erhöhen sich zu nächsten Element immer um 1.<br><br>
+
Die Werte der Aufzählung erhöhen sich zum nächsten Element immer um 1.<br><br>
 
Beispiele für die Deklarierung des Datentyps Enum:<br>
 
Beispiele für die Deklarierung des Datentyps Enum:<br>
 
Die Werte der Aufzählung beginnen standardmäßig bei 0:<br>
 
Die Werte der Aufzählung beginnen standardmäßig bei 0:<br>
Line 25: Line 25:
 
   LargeEnum = (Null, Eins, Zwei);
 
   LargeEnum = (Null, Eins, Zwei);
 
</syntaxhighlight>
 
</syntaxhighlight>
Die Werte der Aufzählung beginnen standardmäßig bei 0, es sei denn, es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugwiesenen Anfangswert.<br>
+
Die Werte der Aufzählung beginnen standardmäßig bei 0, es sei denn, es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugewiesenen Anfangswert.<br>
 
<syntaxhighlight>
 
<syntaxhighlight>
 
Type
 
Type

Revision as of 17:51, 23 July 2013

Deutsch (de) English (en) français (fr)

Zurück zu den Datentypen.

Wertebereich:
bei 0 .. 255 Zeichen ist der Datentyp automatisch Byte
bei 255 .. 65535 Zeichen ist der Datentyp automatisch Word
über 65635 Zeichen ist der Datentyp automatisch Longword
Speicherbedarf: abhängig vom Datentyp und der Anzahl der Elemente

Eigenschaft:
Beim Datentyp Enum Type handelt es sich um eine Aufzählung ganzzahliger vorzeichenloser Konstanten.
Zusätzlich kann für den Datentyp mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer-Datentyp festgelegt werden.
bei 0 .. 255 Zeichen die Schalter für den Datentyp Word:

  • {$Z2} oder {$PACKENUM 2}

bei 0 .. 255 Zeichen die Schalter für den Datentyp Longword:

  • {$Z4} oder {$PACKENUM 4}

bei 255 .. 65535 Zeichen ist der Datentyp Longword:

  • {$Z4} oder {$PACKENUM 4}

Die Werte der Aufzählung erhöhen sich zum nächsten Element immer um 1.

Beispiele für die Deklarierung des Datentyps Enum:
Die Werte der Aufzählung beginnen standardmäßig bei 0:

Type
  {$PACKENUM 2}
  LargeEnum = (Null, Eins, Zwei);

Die Werte der Aufzählung beginnen standardmäßig bei 0, es sei denn, es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugewiesenen Anfangswert.

Type
  {$PACKENUM 4}
  SmallEnum = (Sechs := 6, Sieben, Acht);


Wird mitten in der Aufzählung einem Element ein höherer Wert zugewiesen, dann wird ab diesem Wert weitergezählt.

Type
  {$PACKENUM 1}
  MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf);


Explizite (ausdrückliche) Verwendung des Datentyps Byte für die Aufzählung.

Type
  byte = (Null, Eins, Zwei);


Beispiele für die Zuweisung des Datentyps Enum:

Var 
  S : SmallEnum;
  M : MiddleEnum;
  L : LargeEnum;


Beispiele für die Konvertierung des Datentyps Enum:

  Application.MessageBox(PChar(IntToStr(Qword(Ord(Sechs)))),'Konvertierung',MB_OK);
  Application.MessageBox(PChar(IntToStr(Qword(Ord(S.Sechs)))),'Konvertierung',MB_OK);



--Olaf 16:55, 4 October 2012 (UTC)