根据配置具有不同值的用户宏

User macro having different values depending on configuration

在 Visual C++ 2012 中,我想要一个用户定义的宏(在项目 属性 工作表中使用的宏),其值可以针对每个配置进行不同的定义。

我已经创建了用户宏 with help of this article,但更改特定配置的值会更改所有配置。

有没有办法在每个配置中定义不同的值?

在此 post 中找到答案:Using Visual Studio project properties effectively for multiple projects and configurations

在新建的.props文件中,将第一个PropertyGroup替换为下面的

  <PropertyGroup Label="UserMacros">
    <MilVersion Condition="'$(Configuration)'=='Debug-ConfigA'">Value1</MilVersion>
    <MilVersion Condition="'$(Configuration)'=='Debug-ConfigB'">Value2</MilVersion>
    <MilVersion Condition="'$(Configuration)'=='Release-ConfigA'">Value1</MilVersion>
    <MilVersion Condition="'$(Configuration)'=='Release-ConfigB'">Value2</MilVersion>
  </PropertyGroup>

在此代码中,用户宏 $(MilVersion) 在配置 (Debug|Release)-ConfigA 中为 Value1,在配置 (Debug|Release)-ConfigB 中为 Value2