在C#中,为什么我不能在out参数中传递未分配的对象变量然后分配它?
如果我尝试这样做,则会出现编译器错误:“本地变量< xyz>不能在此范围内声明,因为它会给< xyz> …带来不同的含义”
例如.
void MyMethod(int x,out MyObject mo) { **MyObject** mo = new MyObject(); } // in some other scope: MyObject mo; MyMethod(1,out mo);