当 X# 编译器遇到一个 #ifdef 指令,随后又遇到一个 #endif 指令时,只有当指定的符号被定义时,它才会编译指令之间的代码。
X# 中的 #ifdef 语句是布尔语句,只测试符号是否已定义。例如
// DEBUG 可在命令行中定义
// ...
#if DEBUG
Console.WriteLine("调试版本");
#else
Console.WriteLine("发布版本");
#endif
编译器选项 /vo8 将改变这种行为:
当 /vo8 激活时,任何定义为 TRUE 或非 0 数值的符号将被视为 "已定义",而定义为 FALSE 或 0 数值的符号将被视为 "未定义"。
参见