Inno Setup 预处理器文档约定中的 (define | :) 是什么意思?

What does (define | :) mean in Inno Setup Preprocessor documentation conventions?

我一直在阅读 Inno Setup 预处理器文档,并在指令语法文档约定中偶然发现了一个表达式 (define | :):(https://jrsoftware.org/ispphelp/index.php?topic=define)

(define | :) [private | protected | public] <ident> [[ <expr> ]] [[=] <expr>] 

这里的(define | :)是什么意思?

表示可以使用define:中的一个,意思相同。 | 在语法声明中表示 " 或"

所以虽然你通常会使用:

#define AppName "My Program"

您也可以使用:

#: AppName "My Program"

不过,我直到现在才看到后一种语法在使用。

另请注意,| 并不一定意味着这两个选项是等价的。它们通常不是(private | protected | public 就是这种情况)。只是在这种特殊情况下,它们是。