Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az alábbi táblázat a C#-típusok alapértelmezett értékeit mutatja be:
| Típus | Alapértelmezett érték |
|---|---|
| Bármilyen referenciatípus | null |
| Bármely beépített integrál numerikus típus | 0 (nulla) |
| Bármely beépített lebegőpontos numerikus típus | 0 (nulla) |
| bool | false |
| karakteres |
'\0' (U+0000) |
| enum | A kifejezés (E)0által előállított érték, ahol E az enum azonosító. |
| struktúra | Az az érték, amely úgy keletkezik, hogy az összes érték típusú mezőt az alapértelmezett értékre állítja, a referencia típusú mezőket pedig a következőre null: . |
| Bármely null értékű típus | Egy példány, amelynek a HasValue tulajdonsága és false a Value tulajdonság nincs meghatározva. Ezt az alapértelmezett értéket null értékű értéknek is nevezik. |
Alapértelmezett értékkifejezések
Használja az default operátort egy típus alapértelmezett értékének előállításához, ahogy az az alábbi példában is látható:
int a = default(int);
A literál használatávaldefault inicializálhat egy változót a típusának alapértelmezett értékével:
int a = default;
Érték típusú paraméter nélküli konstruktor
Értéktípus esetén az implicit paraméter nélküli konstruktor a típus alapértelmezett értékét is létrehozza, ahogy az alábbi példa is mutatja:
var n = new System.Numerics.Complex();
Console.WriteLine(n); // output: (0, 0)
Futásidőben, ha a System.Type példány értéktípust jelöl, a Activator.CreateInstance(Type) metódussal meghívhatja a paraméter nélküli konstruktort a típus alapértelmezett értékének lekéréséhez.
Megjegyzés:
Egy struktúratípus (amely értéktípus) rendelkezhet explicit paraméter nélküli konstruktorsal , amely a típus nem alapértelmezett értékét eredményezheti. Ezért azt javasoljuk, hogy használja az default operátort vagy a default literálist egy típus alapértelmezett értékének létrehozásához.
C# nyelvspecifikáció
További információt a C# nyelvspecifikációjának alábbi szakaszaiban talál:
- Alapértelmezett értékek
- Alapértelmezett konstruktorok
- paraméter nélküli szerkezetkonstruktorok
- Automatikus alapértelmezett struktúrák