DELPHI预编译

By 东方不败 at 2022-04-20 • 0人收藏 • 1305人看过


在Delphi中,也有与C相似的预编译指令

一.指令介绍:    

1.DEFINE指令:    

格式:{$DEFINE     名称}    

说明     :用于定义一个在当前单元有效的符号(Symbol)。定义了之后可以使用IF   DEF和IFNDEF指令来判断该符号是否存在。    

2.UNDEF指令:    

格式:{$UNDEF     名称}    

说明:用于取消一个在当前单元已经定义的符号(Symbol)。该指令和DEFINE配合使用。    

3.IFDEF指令:    

格式:{$IFDEF     名称}    

说明:如果该指令后的名称已经定义,则编译该指令后直到{$ELSE}或{$ENDIF}之间的代码段。    

4.IFNDEF指令:    

格式:{$IFNDEF     名称}    

说明:如果该指令后的名称没有定义,则编译该指令后直到{$ELSE}或{$ENDIF}之间的代码段。    

5.IFOPT指令:    

格式:{$IFOPT     开关}    

说明:如果该指令后的开关已经设立,则编译该指令后直到{$ELSE}或{$ENDIF}之间的代码段。    

举例:


{$IFOPT     R+}    

Writeln( '编译时打开范围检查开关 ');    

{$ENDIF}    

6.ELSE指令:    

格式:{$ELSE}    

说明:通过判断前缀Ifxxx的条件式来确定该指令到{$ENDIF}之间的代码段是否应该被编译或者忽略掉。    

7.ENDIF指令:    

格式:{$ENDIF}    

说明:和Ifxxx配合,指明条件预编译段源代码段的结束位置。    


另外,如果要定义全局有效的Name,须通过菜单设置:

Project-Options-directories/conditionals ,下面的conditionals

这是编辑条件,我想要的是对{$IFDEF Name}{$ELSE}{$ENDIF}有效的"全局"定义;


登录后方可回帖