ما هو null/nil في C# وكيفية التعامل معه؟
مرحباً بالجميع! بدأت تعلم C# وواجهت مفهوم null. في لغات أخرى رأيت nil أو None، لكن في C# يبدو أنه نفس الشيء. أرجو توضيح ما يعنيه null في سياق الأنواع المرجعية وكيفية التعامل معه بشكل صحيح؟
حاولت كتابة كود بسيط، لكني أحصل على NullReferenceException. إليك مثال:
public class Person { public string Name { get; set; } }
Person person = null;
Console.WriteLine(person.Name); // خطأ: Object reference not set to an instance of an object.كنت أتوقع أن person.Name سيعيد سلسلة فارغة أو null بدون استثناء. كيف أتجنب مثل هذه الأخطاء؟ جربت التحقق عبر if (person != null)، لكن هذا يثقل الكود. سمعت عن ?. (null-conditional operator) و ?? (null-coalescing operator) — كيف أستخدمها بشكل صحيح؟ كما يهمني معرفة الفرق بين null و defau