- 讲师:刘萍萍 / 谢楠
- 课时:160h
- 价格 4580 元
特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关
配套通关班送国网在线题库一套
声明指令用于定义或取消定义条件编译符号。
对 #define
指令的处理使给定的条件编译符号成为已定义的(从跟在指令后面的源代码行开始)。类似地,对 #undef
指令的处理使给定的条件编译符号成为未定义的(从跟在指令后面的源代码行开始)。
源文件中的任何 #define
和 #undef
指令都必须出现在源文件中第一个“标记”(第 2.4 节)的前面,否则将发生编译时错误。直观地讲,#define
和 #undef
指令必须位于源文件中所有“实代码”的前面。
示例:
#define Enterprise #if Professional || Enterprise #define Advanced #endif namespace Megacorp.Data { #if Advanced class PivotTable {...} #endif }
是有效的,这是因为 #define
指令位于源文件中第一个标记(namespace
关键字)的前面。
下面的示例产生编译时错误,因为 #define
指令在实代码后面出现:
#define A namespace N { #define B #if B class Class1 {} #endif }
#define
指令可用于重复地定义一个已定义的条件编译符号,而不必对该符号插入任何#undef
。下面的示例定义一个条件编译符号 A
,然后再次定义它。
#define A #define A
#undef
指令可用于取消定义一个本来已经是未定义的条件编译符号。下面的示例定义一个条件编译符号 A
,然后两次取消定义该符号;第二个 #undef
没有作用但仍是有效的。
#define A #undef A #undef A
责编:杨粟梅
课程专业名称 |
讲师 |
课时 |
查看课程 |
---|
课程专业名称 |
讲师 |
课时 |
查看课程 |
---|
点击加载更多评论>>