Difference between revisions of "Enum Type/de"

From Lazarus wiki
m
m
Line 5: Line 5:
 
Wertebereich:<br>
 
Wertebereich:<br>
 
bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Byte/de|Byte]]<br>
 
bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Byte/de|Byte]]<br>
bei 255 .. 65535 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Word/de|Word]]<br>
+
bei 255 .. 65535 Zeichen ist der Datentyp automatisch [[Word/de|Word]]<br>
über 65635 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Longword/de|Longword]]<br>
+
über 65635 Zeichen ist der Datentyp automatisch [[Longword/de|Longword]]<br>
Speicherbedarf: abhängig vom [[Data type/de|Datentyp]] und der Anzahl der Elemente<br><br>
+
Speicherbedarf: abhängig vom Datentyp und der Anzahl der Elemente<br><br>
 
Eigenschaft:<br>
 
Eigenschaft:<br>
Beim [[Data type/de|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 [[Data type/de|Datentyp]] mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer [[Data type/de|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 [[Data type/de|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>
bei 0 .. 255 Zeichen die Schalter für den [[Data type/de|Datentyp]] [[Longword/de|Longword]]:<br>
+
bei 0 .. 255 Zeichen die Schalter für den Datentyp [[Longword/de|Longword]]:<br>
 
* {$Z4} oder {$PACKENUM 4}<br>
 
* {$Z4} oder {$PACKENUM 4}<br>
bei 255 .. 65535 Zeichen ist der [[Data type/de|Datentyp]] [[Longword/de|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 zu nächsten Element immer um 1.<br><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 seidenn 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 zugwiesenen Anfangswert.<br>
 
<syntaxhighlight>
 
<syntaxhighlight>
 
Type
 
Type

Revision as of 19:59, 21 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 zu 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 zugwiesenen 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)