Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Varsayılan değer ifadesi, bir türün varsayılan değerini üretir. İki tür varsayılan değer ifadesi vardır: varsayılan işleç çağrısı ve varsayılan değişmez değer.
Ayrıca deyimi içinde default varsayılan büyük/küçük harf etiketi switcholarak anahtar sözcüğünü de kullanırsınız.
varsayılan işleç
aşağıdaki örnekte gösterildiği gibi işlecin bağımsız değişkeni default bir tür veya tür parametresinin adı olmalıdır:
Console.WriteLine(default(int)); // output: 0
Console.WriteLine(default(object) is null); // output: True
void DisplayDefaultOf<T>()
{
var val = default(T);
Console.WriteLine($"Default value of {typeof(T)} is {(val == null ? "null" : val.ToString())}.");
}
DisplayDefaultOf<int?>();
DisplayDefaultOf<System.Numerics.Complex>();
DisplayDefaultOf<System.Collections.Generic.List<int>>();
// Output:
// Default value of System.Nullable`1[System.Int32] is null.
// Default value of System.Numerics.Complex is (0, 0).
// Default value of System.Collections.Generic.List`1[System.Int32] is null.
varsayılan değişmez değer
Derleyici ifade türünü çıkarabildiğinde bir türün varsayılan değerini üretmek için değişmez değerini kullanabilirsiniz default . Değişmez default değer ifadesi, ifadeyle default(T) aynı değeri üretir ve burada T çıkarsanan türdür. Değişmez değeri default aşağıdaki durumlardan herhangi birinde kullanabilirsiniz:
- Bir değişkenin atamasında veya başlatılmasında.
- İsteğe bağlı yöntem parametresi için varsayılan değerin bildiriminde.
- Bağımsız değişken değeri sağlamak için bir yöntem çağrısında.
- Bir
returndeyimde veya ifade gövdeli üyedeki bir ifade olarak.
Aşağıdaki örnekte değişmez değerin kullanımı gösterilmektedir default :
T[] InitializeArray<T>(int length, T initialValue = default)
{
if (length < 0)
{
throw new ArgumentOutOfRangeException(nameof(length), "Array length must be nonnegative.");
}
var array = new T[length];
for (var i = 0; i < length; i++)
{
array[i] = initialValue;
}
return array;
}
void Display<T>(T[] values) => Console.WriteLine($"[ {string.Join(", ", values)} ]");
Display(InitializeArray<int>(3)); // output: [ 0, 0, 0 ]
Display(InitializeArray<bool>(4, default)); // output: [ False, False, False, False ]
System.Numerics.Complex fillValue = default;
Display(InitializeArray(3, fillValue)); // output: [ (0, 0), (0, 0), (0, 0) ]
Tip
Kod tabanınızda değişmez değerin default kullanımıyla ilgili bir tercih belirtmek için .NET stil kuralı IDE0034 kullanın.
C# dil belirtimi
Daha fazla bilgi için C# dil belirtimininVarsayılan değer ifadeleri bölümüne bakın.
Ayrıca bakınız
- C# işleçleri ve ifadeleri
- C# türlerinin varsayılan değerleri
- .NET 'da Genel Türleri