ภาพรวม
Operator default ใช้ดึง ค่าเริ่มต้น (default value) ของชนิดข้อมูลใดๆ ทั้ง value types และ reference types นิพจน์ default ถูกประเมินตอน compile-time
รูปแบบการใช้งาน
int val1 = default(int); // 0 long val2 = default(long); // 0 bool val3 = default(bool); // false string val4 = default(string); // null
ตัวอย่างโค้ดเต็ม
using System;
public class Demo
{
public static void Main()
{
int val1 = default(int);
long val2 = default(long);
bool val3 = default(bool);
Console.WriteLine(val1); // 0
Console.WriteLine(val2); // 0
Console.WriteLine(val3); // False
}
}
ผลลัพธ์
0 0 False
รูปแบบย่อ (C# 7.1+)
int val1 = default; // inferred as int var val2 = default(int); // inferred as int default(string); // valid expression statement (discarded)
กรณีใช้งานทั่วไป
- Generic programming:
T defaultValue = default(T);(หรือdefaultใน C# 7.1+) - Optional parameters:
void Foo(int x = default) - Reset variables:
myStruct = default; - Nullable types:
int? x = default; // null