对不起,如果这个问题看起来很奇怪,我不知道该怎么做。因此,我不确定此问题是否曾被提出过。
拿这段代码:
Object obj = new Object();
Object obj2;
obj2 = obj;
所以我的问题是:
当我将obj
分配给obj2
时,是obj2
指向obj
的内存,还是运行时分配了一个与obj
相同的新内存块{1}}记忆?
谢谢,Ro。
答案 0 :(得分:2)
obj2
引用了obj
指向的同一对象。由于它们指向同一个对象,因此obj2
中的obj
的修改会被“反映”。
答案 1 :(得分:1)
这是一个简单的例子来说明它是一个参考而不是一个副本
public class ClassObject
{
public int entier;
public ClassObject(int p_Initial)
{
this.entier = p_Initial;
}
}
ClassObject obj1 = new ClassObject(2);
Console.WriteLine(obj1.entier); ==> Console obj1.entier = 2
ClassObject obj2 = obj1;
obj2.entier = 5;
Console.WriteLine(obj1.entier); ==> Console obj1.entier = 5
Console.WriteLine(obj2.entier); ==> Console obj2.entier = 5