所以我想通过使用像这样的Visual Studio宏来设置预处理器定义:
<PreprocessorDefinitions>$(ProjectName)_DEFINE</PreprocessorDefinitions>
所以我可以在src文件中使用它:
#ifdef MyProjectName_DEFINE
#define helloWorld
#endif
请帮助我。我在网上找不到任何东西,除了带有/ D参数的东西,所以我试过:/ D $(ProjectName)_EXPORT但它仍然无法工作:(
谢谢!
答案 0 :(得分:1)
设置PreprocessorDefinitions
和使用/D
选项都可以正常工作,但很难说出为什么他们不适合您的情况。可能您正在为不同的构建配置设置选项而不是您正在使用的选项,或者您在某处有拼写错误。
例如:右键单击VS中的项目,选择正确的配置和平台,然后转到属性 - &gt; C / C ++ - &gt;预处理器并输入
%(PreProcessorDefinitions);$(ProjectName)_DEFINED
作为预处理程序定义
的值现在,如果您的项目名为 MyProject ,则将定义预处理器符号MyProject_DEFINED
。请注意%(PreProcessorDefinitions)
的使用,以确保继承构建过程中早期设置的定义。
如果在文本编辑器中打开项目,它将如下所示(此处显示Debug | Win32版本的部分):
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PreProcessorDefinitions>%(PreProcessorDefinitions);$(ProjectName)_DEFINED</PreProcessorDefinitions>
</ClCompile>
</ItemDefinitionGroup>
如果您需要每个平台/配置的定义,请复制/粘贴上面的内容并删除Condition
部分。