C#编译器拒绝使用未分配的int。但是不禁止在类中使用int。为何如此差异?为什么不允许使用未初始化的变量,因为它们保证为零?
class Program
{
class MyInt { public int I; }
static void Main(string[] args)
{
MyInt mi = new MyInt();
Console.WriteLine(mi.I);// accepted by the compiler
int i;
Console.WriteLine(i); // rejected by the compiler
}
}