条件编译有两种类型:
1.宏的方式
#ifdef 宏
#else
#endif
这种方式只能二选一进行编译
2.表达式的方式
#if 表达式
#elif 表达式
#else
#endif
这种方式可以多选一进行编译
注1:如果从多个宏(大于等于3个)中选择一个宏执行时,由于第一种方法只能二选一,所以不能采用第一种方式,必须采用第二种方式,此时表达式的写法如下所示:
#define HONG
#ifdefined(HONG)
#elif defined(HAHA)
#else
#endif
注2:可以使用 #undef 宏名 来取消一个宏定义,比如
#define HONG //生效
#undef HONG //失效