![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内存
seagull327
若大的世界
展开
-
ClearMemory
<br />procedure ClearMemory; begin if Win32Platform = VER_PLATFORM_WIN32_NT then begin SetProcessWorkingSetS原创 2011-02-08 19:52:00 · 726 阅读 · 0 评论 -
动态数组指针应用
Type TMyArr = array of array of array of Integer; Pint = ^TMyArr; var PArr: Pint; i, j, k, ic, jc, kc: Integer; begin ic := 2; jc := 3; kc := 4; New(PArr); SetLength(PArr^, ic, jc, k原创 2013-12-06 20:01:16 · 991 阅读 · 0 评论 -
数组赋值
// var a1,a2:array[0..5]of integer; i:integer; begin for i:=Low(a1) to High(a1) do a1[i]:=i; Move(a1,a2,SizeOf(a1)); a1[3]:=255; //CopyMemory(@a2[0], @a1[0], Length(a1));原创 2013-10-05 23:46:51 · 647 阅读 · 0 评论 -
Delphi中Create(nil),Create(self),Create(Application)区别
Create(nil);//需要自己释放 Create(Self);//当Self释放时自动触发释放 Create(Application);//当Application释放时自动释放 Create(nil);//这种方式创建的对象要自己手工进行FREE才会回收内存,其他很多内存泄漏就是忘了手工释放内存 Create(Self);//由self对象负责释放创建的对象,只要self没有释放掉,转载 2013-02-19 14:52:09 · 5355 阅读 · 0 评论 -
FastMM的安装方法
1> FastMM是开源项目, 从 http://sourceforge.net/projects/fastmm 下载最新版 2> 文件夹Replacement BorlndMM DLL/Precompiled/for Delphi IDE/Performance/BorlndMM.dll,替换掉Delphi/Bin下的相应文件就可以完成对IDE的提速 3> Enviroment->Lib转载 2013-02-28 20:05:08 · 1976 阅读 · 0 评论 -
CreateThread多参数传递
Student = record Name: PChar; age: integer; end; pStudent=^Student; var h: THandle; procedure aa(cc: pStudent); stdcall; begin Form1.Memo1.Lines.Add(cc.Name); Form1.Memo1.Lines.Add(原创 2013-02-25 19:44:21 · 1732 阅读 · 1 评论 -
判断内存流中的图片格式
判断内存流中的图片格式 代码如下: //从内存流中判断图片格式 procedure TForm1.BitBtn4Click(Sender: TObject); var MyImage:TMemoryStream; Buffer:Word; i:integer; begin if OpenDialog1.Execute then begin My转载 2012-10-10 00:46:57 · 988 阅读 · 0 评论 -
关于资源保护与内存释放
1.Tstrings 必须手工释放 Free (TstringList 在堆里分配内存,没有拥有者,所以没有帮她释放的类) 2.关于form释放问题 要彻底释放窗体,光close是不够的。 一般需在onclose事件中写Action:=cafree 并在 FormDestroy事件中写from:=nil; 方法1: t转载 2012-09-15 13:22:16 · 898 阅读 · 0 评论 -
内存分配
1.内存分为三个区域:全局变量区,栈区,堆区 全局变量区:专门存放全局变量 栈区:分配在栈上的变量可被栈管理器自动释放 堆区:堆上的变量内存必须人工去释放 2.指针类变量 指针类的变量在声明为全局变量时被初始化为空值,在声明为局部变量时则初始化为一个随机数,对于指针类型一般 要使用一些代码来完成内存分配 3.动态分配内存的函数和过程 procedure GetMem(Var P:转载 2012-06-15 12:32:28 · 585 阅读 · 0 评论 -
ClearMemory
procedure ClearMemory; begin if Win32Platform = VER_PLATFORM_WIN32_NT then begin SetProcessWorkingSetSize(GetCurrentProcess,原创 2011-08-07 13:29:09 · 588 阅读 · 0 评论 -
内存比较函数 - CompareMem(文件、数组等比较)
所属单元:SysUtils 函数功能:快速内存比较函数,可对两个文件比较、数组进行比较。据测试速度比一般算法要高60~110%。 一、文件的比较 你是否遇到过比较两个任意后缀名文件内容是否相同的问题?(TFileStream其他类可以方便的操作这些文件,但如果说原创 2011-07-30 19:33:06 · 5152 阅读 · 0 评论 -
New,Getmem,ReallocMem联系与区别
New,Getmem,ReallocMem联系与区别procedure New(var P: Pointer); {为一个指针变量分配内存,会自动计算指针所指数据结构需要空的空间大小}procedure GetMem(var P: Pointer; Size: Integer转载 2011-07-22 12:52:27 · 859 阅读 · 0 评论 -
Free
1、在方法中创建,在方法的收尾时.Free。 2、在单元中创建,在单元的释放时.Free。 二、Delphi有优化代码的功能,一般情况下,即使你不写Free。在程序结束时,它会释放的。 三、写Free是程序员的一个良好的习惯。如果你的程序不是正常退出,就会造成内存被占用。 四、对象的创建,如果寄宿在Form(父控件)上,Form释放时,它同时被释放,特别是无寄宿关系(父控件)的,一定要在不转载 2015-04-09 01:00:03 · 738 阅读 · 0 评论