Mar*_*ner 7 delphi directive compiler-directives
我发现在Controls.pas(以及其他单位)中声明了这个指令,我很高兴知道这是什么意思.
{$C PRELOAD}
Run Code Online (Sandbox Code Playgroud)
据我所知,$ C表示断言控制,但PRELOAD关键字是什么?这是"在预加载时断言我"吗?
我在Delphi 2009中发现了这一点
谢谢
该$C指令被调用, Code segment attribute并与关键字MOVEABLE,FIXED,DEMANDLOAD,PRELOAD,DISCARDABLE,PERMANENT结合使用,可以改变代码段的属性.
{$C MOVEABLE DEMANDLOAD DISCARDABLE} // this is setting Code Segment Attribute.
Run Code Online (Sandbox Code Playgroud)
如果您使用$C带有a 的 指令,+或者-您正在使用启用或禁用断言代码的生成.
例如:
{$C+} { Assertions - On }
Run Code Online (Sandbox Code Playgroud)
{$C+}并且{$C-}是为了断言. {$C PRELOAD}是16位编程的延迟,它在运行时立即将单元的代码段预加载到存储器中,而不是等待首先访问段.当32位编程出现时,Delphi 2中没有必要这样做,所以我不知道为什么VCL源仍在使用它.