#PreCompiled 预处理器指令

#PreCompiled:  BOOL

#PreCompiled 指令指定是否预编译源文件。

如果 BOOLTRUE,则假定源文件已预编译。 否则,如果源文件是通过 #Include 指令引用的,则该文件将包含在内联中。

#PreCompiled 指令必须出现在 GDL 源文件中的任何 #Include 指令之前;否则,将忽略它。 BOOL 值是必需的。

标记为预编译的文件将在根上下文中进行分析。 也就是说,由主机或包括 GDL 文件建立的任何上下文都将丢失。 例如,如果主机 GDL 文件在包括预编译文件之前定义了预处理器符号,则在分析预编译文件时,这些符号将不存在。 这种类型的分析可确保无法使用 #Ifdef 块创建多个版本的预编译文件,并让不同的主机定义不同的符号来访问各种#Ifdef块。 由于预编译文件永远不会重新分析,因此只有一个唯一版本。 因此,预编译文件的编写器不得依赖于任何外部定义的预处理器符号。

另请注意,预编译文件必须是唯一的,并且它们必须独立于包含它们的主机。 预编译文件不依赖于主机文件引用的任何包含的内容,也不依赖于主机文件中可能定义的任何内容。

此预处理器指令是 GDL 的新增指令。