delphi 精要-读书笔记(内存分配释放)


本文整理自网络,侵删。

 delphi 精要-读书笔记(内存分配释放)     
1.内存分为三个区域:全局变量区,栈区,堆区

全局变量区:专门存放全局变量

栈区:分配在栈上的变量可被栈管理器自动释放

堆区:堆上的变量内存必须人工去释放


2.指针类变量

指针类的变量在声明为全局变量时被初始化为空值,在声明为局部变量时则初始化为一个随机数,对于指针类型一般要使用一些代码来完成内存分配


3.动态分配内存的函数和过程

procedure GetMem(Var P: Pointer; Size: Integer); 

分配大小为Size字节的内存块,并让P指向它

procedure AllocMem(Size: Cardinal):Pointer;

分配大小为Size字节的内存块并始初化为零,并返回地址指针

procedure ReallocMem(Var P: Pointer; Size: Integer);

在途中更改先前用GetMem或者AllocMem分配的内存大小

procedure FreeMem(Var P: Pointer);

使用GetMem和AllocMem分配的内存都应该用FreeMem释放

Procedure New(Var P: Pointer);

New分配的内存大小由参数P的数据类型确定,因此,不要使用它给无类型指针变量分配内存.

Procedure Dispose(Var P: Pointer);

释放该内存块使用dispose

相关阅读 >>

Delphi 通过jet引擎压缩和修复access数据库

Delphi 关于 tregex.split()

Delphi adoconnection1连接mssql数据库方法

Delphi 软件welcome窗口代码

Delphi 利用tidhttp实现文件下载的分块断点续传

Delphi xe 获取android的路径信息

Delphi unigrid记录check遍历

Delphi中url的编码与解码,即urlencode的使用

Delphi 获取系统的硬盘分区及使用信息

Delphi windows 编程[16] - 添加与删除菜单项:getmenu、appendmenu、deletemenu、drawmenubar

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    正在狠努力加载,请稍候...