[Delphi]Packed Record和Record的区别
2008-09-08 09:50
302 查看
Record的数据各个字节都是对齐的,数据格式比较完整,所以这种格式相对packed占用的内存比较大,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
但是因为格式比较整齐,所以电脑读取这个类型的数据的时候速度比较快。
而Packed Record对数据进行了压缩,节省了内存空间,当然他的速度也变的慢了。
type
//Declare an unpacked record
TDefaultRecord = Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
//Declare a packed record
TPackedRecord = Packed Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
var
defaultRec : TDefaultRecord;
packedRec : TPackedRecord;
begin
ShowMessage('Default record size = '+IntToStr(SizeOf(defaultRec)));
ShowMessage('Packed record size = '+IntToStr(SizeOf(packedRec)));
end;
Default record size = 20
Packed record size = 14
不过,对于现在的操作系统来,packed Record 节省的那些空间已不用考虑他了。除了做DLL(不用packed容易造成内存混乱)和做硬件
编程时(比如串口)编程时必须用到packed Record,其它情况都可以用Record
但是因为格式比较整齐,所以电脑读取这个类型的数据的时候速度比较快。
而Packed Record对数据进行了压缩,节省了内存空间,当然他的速度也变的慢了。
type
//Declare an unpacked record
TDefaultRecord = Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
//Declare a packed record
TPackedRecord = Packed Record
name1 : string[4];
floater : single;
name2 : char;
int : Integer;
end;
var
defaultRec : TDefaultRecord;
packedRec : TPackedRecord;
begin
ShowMessage('Default record size = '+IntToStr(SizeOf(defaultRec)));
ShowMessage('Packed record size = '+IntToStr(SizeOf(packedRec)));
end;
Default record size = 20
Packed record size = 14
不过,对于现在的操作系统来,packed Record 节省的那些空间已不用考虑他了。除了做DLL(不用packed容易造成内存混乱)和做硬件
编程时(比如串口)编程时必须用到packed Record,其它情况都可以用Record
相关文章推荐
- [Delphi]Packed Record和Record的区别
- delphi中Record 和Packed Record的区别
- delphi中Record和Packed Record区别
- [Delphi]Packed Record和Record的区别
- delphi中Record 和Packed Record的区别
- *Delphi中record和packed record的区别
- delphi中Record 和Packed Record的区别
- delphi中Record 和Packed Record的区别
- delphi中Record 和Packed Record的区别
- delphi(D7)record,object,class区别比较
- Record 和Packed Record的区别
- delphi中Record 和Packed Record的区别
- packed record和record的区别
- packed record与record区别
- packed record & record 区别 [转]
- packed record与record区别
- Delphi TThread 和 CreateThread 简单区别
- Delphi : record 记录类型 - 结构指针
- Delphi中的内存对齐 与 Packed关键字
- 本文主要介绍了在pascal(delphi)中函数和过程的区别。