var a = MyClassInstance;
    MyClassInstance = null;
    //if (a !=null){ //why }

我认为a指向MyClassInstance,而MyClassInstance等于null,那么a也必须等于null。但是a不为null,我不明白为什么。

最佳答案

变量a是一个引用,因此它持有的值是某个对象的“位置”。 MyClassInstance也是一个引用。通过设置a = MyClassInstance,它们都指向同一实例。将MyClassInstance设置为null只会影响该引用。它不会影响对象本身,也不会影响任何其他引用。

关于.net - 引用类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6014723/

10-12 03:55