W artykule MSDN na String Basics pokazuje to:Dlaczego dodawanie wartości null do ciągu jest legalne?
string str = "hello";
string nullStr = null;
string emptyStr = "";
string tempStr = str + nullStr; // tempStr = "hello"
bool b = (emptyStr == nullStr);// b = false;
string newStr = emptyStr + nullStr; // creates a new empty string
int len = nullStr.Length; // throws NullReferenceException
Dlaczego nie łącząc z zerową rzucać wyjątku null odniesienia? Czy to ułatwia życie programistom, tak aby nie musieli sprawdzać wartości zerowej przed konkatenacją?
Pytanie dotyczyło ostatecznie racjonalnego sposobu projektowania języka. Niektórzy ludzie próbowali odgadnąć inne odpowiedzi. Potrzebujemy kogoś z państw członkowskich, aby tu odpowiedzieć. –
Doskonały wybór przez zespół C#, ponieważ okazało się działać jak czar z operatorem null-warunkowym C# 6, zwłaszcza w połączeniu z funkcjami interpolacji ciągów C# 6: 'return $" {person? .FirstName} {person? .LastName} "' – GDS