3
สลับกับพฤติกรรมแปลก ๆ var / null
ระบุรหัสต่อไปนี้: string someString = null; switch (someString) { case string s: Console.WriteLine("string s"); break; case var o: Console.WriteLine("var o"); break; default: Console.WriteLine("default"); break; } ทำไมงบเปลี่ยนการจับคู่ในcase var o? เป็นความเข้าใจของฉันที่case string sไม่ตรงกันเมื่อใดs == nullเนื่องจาก (ได้ผล) (null as string) != nullประเมินเป็นเท็จ IntelliSense บน VS Code บอกฉันว่าoเป็นstringเช่นกัน ความคิดใด ๆ ? คล้ายกับ: C # 7 …