ภาพรวม
StringBuilder เป็น reference type (class) ดังนั้นค่าเริ่มต้นคือ null
รูปแบบการใช้งาน
StringBuilder str = default(StringBuilder); // null
ตัวอย่างโค้ดเต็ม
using System;
using System.Text;
public class Demo
{
public static void Main()
{
StringBuilder str = default(StringBuilder);
Console.WriteLine("Default for StringBuilder = " + str);
}
}
ผลลัพธ์
Default for StringBuilder =
(แสดงว่าง เพราะ null.ToString() = "" และ Console.WriteLine(null) พิมพ์บรรทัดว่าง)
การใช้งานจริง
- ฟิลด์ในคลาส:
private StringBuilder _buffer = default;(เริ่มต้นเป็น null) - Lazy initialization:
_buffer ??= new StringBuilder(); - Optional parameter:
void Log(StringBuilder sb = default) => sb ??= new StringBuilder();
หมายเหตุ
ตัวอย่างต้นฉบับมีข้อความ "Default for StringBuilder = Null" ซึ่งเป็นข้อความเพิ่มเติม ไม่ใช่ผลลัพธ์จริงของ Console.WriteLine