如何使用vs在调试时查看内存

如何使用vs在调试时查看内存,第1张

首先由MyClass声明的X、Y对象是引用类型没错。但其中的MyInt由于是int类型,所以首慧是值类型弊誉。

X.MyInt=18;

这句代码会在栈中分配内存,并初始化这块内存为18;存的是值不是引用。

Y=X,正如你所说的。由于X、Y都是引用类型,所以会在托管堆中分配内存。

这句代码之后,Y就会指向系统为X分配的那块内存。实际上是同一块内存,当然修改了Y,X也会变了。

当然了,你可以自己写个测试程序,点击调试,在VS2008的调试者卜答菜单下的窗口中选择内存,可以查看X、Y的内存地址。它们的地址是一样的。

string是按引用存储的。

可以用GlobalMemoryStatus()函数实现,示例:

#include <stdio.h>

#include <Windows.h>

int main(int 雹岁argc, char *argv[])

{

MEMORYSTATUS memStatus

GlobalMemoryStatus(&memStatus)

printf("%lu\n", memStatus.dwTotalPhys 运判/ 1024 / 1024)//输出系统内存的总量

printf("%lu\n", memStatus.dwAvailPhys / 1024 旁肆改/ 1024)//输出系统内存的当前可用量

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12559307.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存