$C PRELOAD 指令的含义是啥?
Posted
技术标签:
【中文标题】$C PRELOAD 指令的含义是啥?【英文标题】:What is the meaning of $C PRELOAD directive?$C PRELOAD 指令的含义是什么? 【发布时间】:2011-12-14 01:33:46 【问题描述】:我在 Controls.pas(以及其他单元)中发现了这个指令,我很高兴知道它是什么意思。
$C PRELOAD
据我所知 $C 表示断言控制,但 PRELOAD 关键字是什么?是不是类似于“在预加载时断言我”?
我在 Delphi 2009 中发现了这个
谢谢
【问题讨论】:
【参考方案1】:$C
指令称为Code segment attribute
,与关键字 MOVEABLE、FIXED、DEMANDLOAD、PRELOAD、DISCARDABLE、PERMANENT 结合使用可更改代码段的属性。
$C MOVEABLE DEMANDLOAD DISCARDABLE // this is setting Code Segment Attribute.
如果您将$C
指令与+
或-
一起使用,则您正在使用启用或禁用断言代码的生成。
示例:
$C+ Assertions - On
【讨论】:
【参考方案2】:$C+
和 $C-
用于断言。 $C PRELOAD
是 16 位编程的遗留物,它在运行时立即将单元的代码段预加载到内存中,而不是等待首先访问该段。当 32 位编程出现时,这在 Delphi 2 中变得不必要了,所以我不知道为什么 VCL 源仍在使用它。
【讨论】:
以上是关于$C PRELOAD 指令的含义是啥?的主要内容,如果未能解决你的问题,请参考以下文章
注释是不是允许与预处理器指令在同一行,在这种情况下它们的含义是啥?
能在运行CMD时运行的计算机内部命令都有哪些?含义分别是啥?