自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 C#中堆和栈的区别

<br />一个由c/C++编译的程序占用的内存分为以下几个部分 <br /><br />1、栈区(stack)―   由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 <br /><br />2、堆区(heap) ―   一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 <br /><br />3、全局区(静态区)(static)―,全局变量和静态变量的存储是放在一块的,初始化的全局

2011-02-27 22:40:00 403

原创 C#指针类型

<br />操作c#中的指针,是一种编写非托管中的一种技术。<br />c#中指针类型可能是(存储在栈)中的值类型,也可能是(存储在堆)中的引用<br />类型。不过无论是什么类型,基本格式都有一个共同的要求就是必须都是支持非<br />托管的类型或者空类型。<br />(这里顺便提一句,非托管的类型编译依赖系统类型库,而托管的类型依赖CLR中元<br />数据.)<br />在C#中支持非托管的类型包括: sbyte, byte, short, ushort, int, uint,<br />long,

2011-02-27 22:39:00 1521

原创 C#中堆和堆栈的区别

首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB) 堆栈stack 堆栈中存储值类型。 堆栈实际上是向下填充,即由高内存地址指向地内存地址填充。 堆栈的工作方式是先分配内存的变量后释放(先进后出原则)。 堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的规则不与变量的生命周期起冲突! 堆栈的性能非常高,但是对于所有的变量来说还不太灵活,而且变量的生命周期必须嵌套。 通常我们希望使用一种方法分配内存来存储数据,并且方法退

2011-02-27 22:37:00 549

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除