条件编译常数
更新:2007 年 11 月
条件编译使您在编译时可以容易地控制在程序中包含哪些代码。
下表列出了可用于条件编译的预定义常数。
常数 |
说明 |
---|---|
CONFIG |
一个字符串,与“配置管理器”中的“活动的解决方案配置”框的当前设置相对应。 |
DEBUG |
可以在“项目属性”对话框中设置的 Boolean 值。默认情况下,项目的“调试”配置定义 DEBUG。如果定义了 DEBUG,则 Debug 类方法会将生成的输出结果显示在“输出”窗口中。如果未定义该值,则不会编译 Debug 类方法,也不会生成调试输出。 |
TARGET |
一个字符串,表示项目的输出类型或命令行 /target 选项的设置。TARGET 的值可能是:表示 Windows 应用程序的“winexe”、表示控制台应用程序的“exe”、表示类库的“library”和表示模块的“module”。/target 选项可以在 Visual Studio 集成开发环境中设置。有关更多信息,请参见 /target。 |
TRACE |
可以在“项目属性”对话框中设置的 Boolean 值。默认情况下,项目的所有配置都定义 TRACE。如果定义了 TRACE,则 Trace 类方法会将生成的输出结果显示在“输出”窗口中。如果未定义该值,则不会编译 Trace 类方法,也不会生成任何 Trace 输出。 |
VBC_VER |
以 major.minor 格式表示 Visual Basic 版本的数字。Visual Basic 2005 的版本号为 8.0。 |
_MYTYPE |
一个字符串,表示正在生成的项目类型。控制哪些 My 对象可在代码中使用。有关更多信息,请参见 My 对项目类型的依赖方式。 |
这些常数只能用于条件编译;它们不能用在可执行代码中。
示例
该示例使用 TARGET 条件编译常数确定是否编译某些语句。
#If TARGET = "winexe" Then
' Insert code to be compiled for a Windows application.
#ElseIf TARGET = "exe" Then
' Insert code to be compiled for a console application.
#End If
要求
Visual Studio 集成开发环境定义 CONFIG、DEBUG、TRACE 和 _MYTYPE 条件编译常数。
Visual Basic 编译器定义 TARGET 和 VBC_VER 条件编译常数。TARGET、VBC_VER 和 _MYTYPE 常数不能用于 Visual Basic 2005 之前的编译器版本。