使用Casting null并不能作为灵感编译,并且来自Eric Lippert的评论:
这表明了一个有趣的案例."uint x =(int)0;" 即使int不能隐式转换为uint也会成功.
我们知道这不起作用,因为object无法分配到string:
string x = (object)null;
Run Code Online (Sandbox Code Playgroud)
但这确实如此,但直觉上它不应该:
uint x = (int)0;
Run Code Online (Sandbox Code Playgroud)
为什么不编译器允许这种情况下,int不隐式转换为uint?
.net c# compiler-construction type-conversion implicit-conversion