#undef指令(c/C++)
移除 (未定义)。 #define以前创建的名称。
#undef identifier
备注
#undef 指令移除 标识符的当前定义。 因此, 标识符 后续匹配项由预处理器忽略。 使用 #undef,若要移除宏定义,请仅生成宏 标识符 ;不要指定给参数列表。
还可以对 #undef 指令于以前没有使用定义的标识符。 这确保了该标识符是未定义的。 宏替换不在 #undef 语句中执行。
#undef 指令在标识符中具有特殊含义的源程序通常对以 #define 指令创建区域。 例如,源程序的特定功能可以使用清单常数定义不会影响程序的其余部分的环境特定值。 #undef 指令还与 #if 指令一起使用控件源程序的条件编译。 请参见 #if、 #elif、 #else 和 #endif 指令 有关更多信息。
在下面的示例中, #undef 指令移除某个符号常数和宏的定义。 请注意给定宏的仅标识符。
#define WIDTH 80
#define ADD( X, Y ) ((X) + (Y))
.
.
.
#undef WIDTH
#undef ADD
Microsoft 专用
宏可以是未定义从命令行使用 /U 选项,后跟将未定义的宏名。 问题此命令的效果 #undef 宏名称 语句序列等效在文件开头。
特定于 Microsoft 的结尾