预定义宏

RC 不支持 ANSI C 预定义宏(__DATE____FILE____LINE____STDC____TIME____TIMESTAMP__)。 因此,不能将这些宏包含在资源脚本中包含的头文件中。

RC 定义了RC_INVOKED,这使你可以根据编译器是 C 编译器还是 RC 编译器来有条件地编译头文件的部分。 这一点很重要,因为 RC 编译器仅支持 C 编译器将支持的语句的子集。

若要使用 RC 编译器有条件地编译代码,请将 RC 无法用 #ifndef RC_INVOKED 和 #endif编译的代码括起来。

以下示例摘自 SDK 示例。 它演示如何创建可以有条件编译的头文件。

#ifndef RC_INVOKED
#pragma message("Including CntrOutl.H from " __FILE__)
#endif