Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
I följande tabell visas standardvärdena för C#-typer:
| Typ | Standardvärde |
|---|---|
| Vilken som helst referenstyp | null |
| Alla inbyggda heltalstyper | 0 (noll) |
| Någon inbyggd flyttalstyp för numeriska värden | 0 (noll) |
| bool | false |
| tecken |
'\0' (U+0000) |
| enum | Värdet av uttrycket (E)0, där E är enumidentifieraren. |
| struct | Värdet som skapas genom att ange alla fält av värdetyp till sina standardvärden och alla fält av referenstyp till null. |
| Vilken som helst nullbar värdetyp | En instans där egenskapen HasValue är false och egenskapen Value är odefinierad. Standardvärdet kallas även null- värdet för en nullbar värdetyp. |
C#-språkreferensen dokumenterar den senaste versionen av C#-språket. Den innehåller även inledande dokumentation för funktioner i offentliga förhandsversioner för den kommande språkversionen.
Dokumentationen identifierar alla funktioner som först introducerades i de tre senaste versionerna av språket eller i aktuella offentliga förhandsversioner.
Tips/Råd
Information om när en funktion först introducerades i C# finns i artikeln om språkversionshistoriken för C#.
Standardvärdeuttryck
Använd operatorn default för att skapa standardvärdet för en typ, vilket visas i följande exempel:
int a = default(int);
Du kan använda default literal för att initiera en variabel med standardvärdet för dess typ:
int a = default;
Parameterlös konstruktor av en värdetyp
För en värdetyp genererar implicit parameterlös konstruktor också standardvärdet för typen, vilket visas i följande exempel:
var n = new System.Numerics.Complex();
Console.WriteLine(n); // output: (0, 0)
Om instansen vid körning representerar System.Type en värdetyp kan du använda Activator.CreateInstance(Type) metoden för att anropa den parameterlösa konstruktorn och hämta standardvärdet för typen.
Obs
En strukturtyp (som är en värdetyp) kan ha en explicit parameterlös konstruktor som returnerar ett icke-standardvärde av typen. Om du vill hämta standardvärdet för en typ använder du operatorn default eller literalen default .
Språkspecifikation för C#
Mer information finns i följande avsnitt i C#-språkspecifikationen:
- Standardvärden
- Standardkonstruktorer
- Parameterlösa struct-konstruktorer
- Automatiska standardstrukturer