请问“Packed Record”和“Record”有什么不同?

oldhawk 2001-10-15 10:55:38
谢谢!
...全文
102 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qkl 2001-10-16
  • 打赏
  • 举报
回复
因为 c/c++ 语言却省 record 的就是紧凑格式的(字节对齐),而 windows 大部分是用 c/c++ 写的,所以很多 winAPI 的 record 都是紧凑格式的(字节对齐)。你在 windows unit 中会看到大量的 packed ,就是为了使用 winAPI 而声明的.
oldhawk 2001-10-16
  • 打赏
  • 举报
回复
可是我经常在戴妃自带的原码里看到这类PACKED的声明,很多都是,跟通讯无关。
oldhawk 2001-10-16
  • 打赏
  • 举报
回复
哈哈,原来如彼。
THANK YOU ALL!
给分喽
xiaogq 2001-10-15
  • 打赏
  • 举报
回复
record 是字节对齐的,如整形变量对齐(懂不懂字节对齐?学过汇编你就知道),pached Record确保变量之间没有空闲的字节,她不考虑对齐,这会可能会稍微降低运行速度
hellion 2001-10-15
  • 打赏
  • 举报
回复
Packed Record是字节对齐,一般与其他程序通讯等使用
lldwolf 2001-10-15
  • 打赏
  • 举报
回复
学习学习
airhorse 2001-10-15
  • 打赏
  • 举报
回复

与其他语言通讯时,要确保变量之间没有空闲的字节。

也可以用在,option->Compiler->Aligned record feilds

来设置。
oldhawk 2001-10-15
  • 打赏
  • 举报
回复
原来如此,
再请问一下,那什么时候用Packed,也就是什么时候需要要确保变量之间没有空闲的字节。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧