Werttyp

Aus Das Sopra Wiki
Wechseln zu: Navigation, Suche

Wertetypen sind Datentypen, welche bei der Übergabe als Parameter - im Gegensatz zu Referenztypen - nicht als Referenz übergeben werden. Stattdessen wird der in ihnen gespeicherte Wert bei eienm Funktionsaufruf kopiert und steht der aufgerufenen Funktion zur Verfügung, ohne dass Änderungen an der Variable sich auf die "Ursprungsvariable" auswirken.

In C# existieren 13 Wertetypen, die man nicht extra zu definieren braucht. Dabei handelt es sich ausnahmslos um integrierte Datentypen. Außerdem werden Strukturen und Aufzählungen ebenfalls als Wertetypen behandelt:

Datentyp Größe Wertebereich Alias
bool 1 Bit true, false System.Boolean
byte 8 Bit <math>0</math> bis <math>255</math> System.Byte
sbyte 8 Bit <math>-128</math> bis <math>127</math> System.SByte
char 16 Bit ein Unicode-Zeichen System.Char
short 16 Bit <math>-32~768</math> bis <math>32~767</math> System.Int16
ushort 16 Bit <math>0</math> bis <math>65~535</math> System.UInt16
int 32 Bit <math>- 2~147~483~648</math> bis <math>2~147~483~647</math> System.Int32
uint 32 Bit <math>0</math> bis <math>4~294~967~295</math> System.UInt32
long 64 Bit <math>-9~223~372~036~854~775~808</math> bis <math>9~223~372~036~854~775~807</math> System.Int64
ulong 64 Bit <math>0</math> bis <math>18~446~744~073~709~551~615</math> System.UInt64
float 32 Bit <math>\pm 1.5 \cdot 10^{45}</math> bis <math>\pm 3.4 \cdot 10^{38}</math> System.Single
double 64 Bit <math>\pm 5.0 \cdot 10^{324}</math> bis <math>\pm 1.7 \cdot 10^{308}</math> System.Double
decimal 128 Bit <math>\pm 1.0 \cdot 10^{28}</math> bis <math>\pm 7.9 \cdot 10^{28}</math> System.Decimal
struct variabel variabel -
enum variabel variabel -