| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1088 人关注过本帖
标题:[求助]请问 内存的堆 和 栈 是什么意思?
只看楼主 加入收藏
mybaobao
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2007-2-27
收藏
 问题点数:0 回复次数:7 
[求助]请问 内存的堆 和 栈 是什么意思?

"Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的."

你们好

我对计算机结构不是很懂,

请问 内存的堆 和 栈 是什么意思?

二者有什么区别?

谢谢!

搜索更多相关主题的帖子: 内存 类型 Struct 
2007-11-01 22:49
mybaobao
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2007-2-27
收藏
得分:0 
"值类型和引用类型的区别?
在C#中有两大类数据类型,即值类型和引用类型,值类型存贮在栈中,而引用类型存贮在动态的堆中,栈是先进先出的有系统管理的空间,而堆是由应用程序控制的可随时申请和释放该空间,在C#中一般情况下有垃圾收集器处理,他们的不同导致在编程上的不同。
例: StringBuilder a=new StringBuilder();//将StringBuilder的一个首地址传给a
StringBuilder b=a;//将StringBuilder的一个首地址传给b
b.Append("mxh");
Console.WriteLine(a);
a=null;
Console.WriteLine(b);
输出结果:mxh
mxh
"a=null"的意思是:a的引用置为空但此时StringBuilder的堆空间并没有被释放,因此在此之后,输出b时,仍然可以输出mxh "

我找到这个,但还是不怎么明白?

如果
这个世界真的有奇迹
那么
你我所各自站立的土地
能否合二为一
2007-11-01 22:53
yoapple
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-10-13
收藏
得分:0 
2楼那位说错了一点:栈应该是先进后出的数据结构,队列才是先进先出的.C++语言中栈是一般数据的存储的地方,而堆是动态数据分配的存储地方

2007-11-01 23:34
mybaobao
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2007-2-27
收藏
得分:0 
谢谢啊

还是不是很明白

如果
这个世界真的有奇迹
那么
你我所各自站立的土地
能否合二为一
2007-11-02 21:42
shen521941
Rank: 2
等 级:论坛游民
威 望:1
帖 子:428
专家分:22
注 册:2006-12-1
收藏
得分:0 
看下C你就明白了

曾经有双翅膀,我没用她飞上蓝天,丢锅里炖汤了!
2007-11-03 08:13
嘻习玺戏
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2007-10-22
收藏
得分:0 
推荐严维民版数据结构学一下,很有用

2007-11-03 17:48
mybaobao
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2007-2-27
收藏
得分:0 

谢谢啊,我去找来看一下


如果
这个世界真的有奇迹
那么
你我所各自站立的土地
能否合二为一
2007-11-03 19:02
pacocai
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1583
专家分:0
注 册:2007-3-12
收藏
得分:0 
这些东西在数据结构里说得很清楚,读一下数据结构的书就能比较明白了。

浮生若梦天边月,醉死如酒水中星。红楼一梦千人叹,岂让万夫空做贱。博客:http://hi.baidu.com/rxvip
2007-11-03 20:22
快速回复:[求助]请问 内存的堆 和 栈 是什么意思?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018301 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved