/U、/u(未定义符号)
/U
编译器选项可取消定义指定的预处理器符号。 /u
编译器选项可取消定义编译器定义的 Microsoft 特定符号。
语法
/U
[ ]符号
/u
参数
符号
要取消定义的预处理器符号。
备注
/U
和 /u
选项都不能取消定义使用 #define
指令创建的符号。
/U
选项可以取消定义以前使用 /D
选项定义的符号。
默认情况下,编译器可能会定义大量 Microsoft 特定的符号。 以下是一些常见符号:
符号 | 函数 |
---|---|
_CHAR_UNSIGNED |
默认 char 类型是无符号的。 指定 /J 选项时定义。 |
_CPPRTTI |
为使用 /GR 选项编译的代码定义。 |
_CPPUNWIND |
为使用 /EHsc 选项编译的代码定义。 |
_DLL |
指定 /MD 选项时定义。 |
_M_IX86 |
默认情况下,对于 x86 目标,定义为 600。 |
_MSC_VER |
定义为每个编译器版本的唯一整数值。 有关详细信息,请参阅预定义宏。 |
_WIN32 |
为 WIN32 应用程序定义。 始终定义。 |
_MT |
指定 /MD 或 /MT 选项时定义。 |
有关 Microsoft 特定的预定义宏的完整列表,请参阅预定义宏。
在 Visual Studio 开发环境中设置此编译器选项
打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
选择“配置属性”>“C/C++”>“高级”属性页。
修改“取消定义预处理器定义”或“取消定义所有预处理器定义”属性。
以编程方式设置此编译器选项
另请参阅
MSVC 编译器选项
MSVC 编译器命令行语法
/J
(默认 char 类型是无符号的)
/GR
(启用运行时类型信息)
/EH
(异常处理模型)
/MD
、/MT
、/LD
(使用运行时库)