同名的全局变量和局部变量在内存中是怎么保存的~~

lipenggege 2009-11-28 04:58:09
RT

例如:我在类中申明一个

int a=5;

然后在方法中再申明一个

int a=7;

这两者在内存中是怎样保存的~~??很明显在该方法中 直接调用a 就能访问局部a

用THIS.a 就能访问 全局的a 我就像问一下 他们在内存中是怎样保存的~~~

两者有没有联系什么的~~~~~~???

或者全局和局部的一些区别什么的???


3Q
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cuike519 2009-11-28
  • 打赏
  • 举报
回复
==>两者有没有联系什么的~~~~~~???
如果非要说联系,可能就是名字上有联系吧。

或者全局和局部的一些区别什么的???
==>局部变量在函数调用结束后就没了,全局的则不会。


至于在内存中的布局,自己好好想想吧,调试工具能帮助你。
threenewbee 2009-11-28
  • 打赏
  • 举报
回复
全局变量一般是在数据段分配的
局部变量是在堆栈上分配的

不过你问的问题和这个无关。
虽然两个变量重名,但是编译器会区分的,所以使用哪个变量,在编译阶段就确定了。
sohighthesky 2009-11-28
  • 打赏
  • 举报
回复
不同名字的在内存中是怎么保存的?
波导终结者 2009-11-28
  • 打赏
  • 举报
回复
名字和保存有什么关系吗?

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧