我试图添加一个预处理器定义,这样一个值只有在某个项目正在构建时才被定义,然后它就变为未定义的。我已经进入了我的项目属性->预处理器->预处理器定义。在这里,我打字 #define PROJECTNAME_EXPORT 希望我能打电话给 #ifdef PROJECTNAME_EXPORT 在整个项目中,在构建时交换一个值(在dllexport和dllimport之间)。
#define PROJECTNAME_EXPORT
#ifdef PROJECTNAME_EXPORT
但是,当我点击OK时,看起来Visual Studio在定义之前添加了一个双引号。当我尝试构建时,我会得到100多个错误,大多数都是说“非法的转义序列”。其他需要注意的是“int-define:重定义”、“int-myproject-export-redefinition”等。我做错什么了吗?
您不包括“ #define “在定义中。只是符号的名称,以及可选的值,如:
#define
PROJECTNAME_EXPORT=coolness
考虑您在这里输入到IDE中的定义的方法是,使用 /D option ,所以语法应该很接近。不需要包括 α定义 语法,因为这些定义不是在C源代码中交给编译器/预处理器,而是通过不同的机制。
α定义