vs2008调试时怎么查看变量的内存地址
1个回答
展开全部
首先由MyClass声明的X、Y对象是引用类型没错。但其中的MyInt由于是int类型,所以是值类型。
X.MyInt=18;
这句代码会在栈中分配内存,并初始化这块内存为18;存的是值不是引用。
Y=X,正如你所说的。由于X、Y都是引用类型,所以会在托管堆中分配内存。
这句代码之后,Y就会指向系统为X分配的那块内存。实际上是同一块内存,当然修改了Y,X也会变了。
当然了,你可以自己写个测试程序,点击调试,在VS2008的调试菜单下的窗口中选择内存,可以查看X、Y的内存地址。它们的地址是一样的。
string是按引用存储的。
X.MyInt=18;
这句代码会在栈中分配内存,并初始化这块内存为18;存的是值不是引用。
Y=X,正如你所说的。由于X、Y都是引用类型,所以会在托管堆中分配内存。
这句代码之后,Y就会指向系统为X分配的那块内存。实际上是同一块内存,当然修改了Y,X也会变了。
当然了,你可以自己写个测试程序,点击调试,在VS2008的调试菜单下的窗口中选择内存,可以查看X、Y的内存地址。它们的地址是一样的。
string是按引用存储的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询