{$ C PRELOAD}指令的含义是什么?

时间:2011-12-14 01:33:46

标签: delphi directive compiler-directives

我发现在Controls.pas(以及其他单位)中声明了这个指令,我很高兴知道这是什么意思。

{$C PRELOAD}

据我所知,$ C表示断言控制,但PRELOAD关键字是什么?这是“在预加载时断言我”吗?

我在Delphi 2009中发现了这个

谢谢

2 个答案:

答案 0 :(得分:7)

$C指令称为Code segment attribute,并与关键字MOVEABLE,FIXED,DEMANDLOAD,PRELOAD,DISCARDABLE,PERMANENT结合使用,可以更改代码段的属性。

{$C MOVEABLE DEMANDLOAD DISCARDABLE} // this is setting  Code Segment Attribute.

如果您使用$C指令与+-您正在使用启用或禁用断言代码的生成。

示例:

{$C+}    { Assertions - On }

答案 1 :(得分:7)

{$C+}{$C-}用于断言。 {$C PRELOAD}是16位编程的延迟,它在运行时立即将单元的代码段预加载到内存中,而不是等待首先访问段。当32位编程出现时,Delphi 2中没有必要这样做,所以我不知道为什么VCL源仍在使用它。