【转】DELPHI预编译

在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}有效的"全局"定义;

注意:要Build一下后才会生效…

原文地址:https://www.cnblogs.com/minideas/p/2182113.html