栈和堆的区别

本文介绍了计算机内存中的两个关键区域——堆和栈的区别与用途。详细解释了栈的后进先出特性及其在Windows Mobile开发中的应用,以及堆的无序特性和C#中数据类型的存储方式。此外还探讨了构造函数在对象创建过程中的作用。

 

内存可以分为2部分:堆和栈

栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等。

 

堆区(heap)—一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。

 

 

栈:后进先出,我们在windows mobile开发中用它存储界面跳转Url,从上个界面进入当前界面可能要返回,返回时必须将当前界面关闭,打  开上个界面,用栈可以将跳转界面的Url通过先进后出的原则从栈中清除。

 

堆:没有顺序。

 

内存可以分为2部分:堆和栈
栈相对与堆来说比较小.

其次讲C#中的数据类型:
C#中的数据类型很多.但是可以简单的划分成两类.
值类型和引用类型.
类是属于引用类型
值类型保存在栈中. 引用类型保存在堆中.

最后讲构造函数的作用:
对象的产生跟编程环境没有关系.
我们在C#中常常看到的代码:
Class a = new Class();
只有这样才产生了一个对象.这个时候内存中才有了这个对象
new是用来分配内存的关键字.new后面的Class()叫构造函数,也叫构造器.是用来控制如何分配内存空间的.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值