(Bu bir kopya, ama aramak zor, bu yüzden gelecekteki aramalar için daha başka bir hedef sağlayacak kadar mutluyum ...)
O null-coalescing operator bu. Esasen, ilk işleneni değerlendirir ve sonuç null ise (boş bir değer türü için boş bir başvuru veya boş değer), o zaman ikinci işleneni değerlendirir. Sonuç, en son hangi işlenenin etkili olarak değerlendirildiğidir.
Not onun çağrışımsal nedeniyle yazabilirsiniz o: E1
, E2
, E3
ve E4
tip int?
ifadeleridir
int? x = E1 ?? E2 ?? E3 ?? E4;
eğer - bu E1
ve ilerleme ile başlayacak bir sivil bulana kadar Boş değer.
İlk işlenenin null yapılabilen bir türü olması gerekir, ancak ikinci bir işleneni geçersiz olmayan olabilir; bu durumda, genel ifade türü null olarak yapılamaz. Örneğin, E4 hala int?
o zaman x
olmayan null yapabilirsiniz olan tip int
(ancak geri kalan her bir ifadesidir varsayalım:
int x = E1 ?? E2 ?? E3 ?? E4;
'??' olarak aramak için zor olabilir böyle ama ararken "C# sözdizimi" veya "C# operatörleri" oldukça hızlı bir şekilde cevapları alır. –