属性表 (C++)
项目属性表是扩展名为 .props 的基于 XML 的文件。它使您能为生成工具(如编译器或链接器)指定开关,并创建用户定义的宏。
由于在 .props 文件中定义的项目设置是可继承的,这一点不同于在项目文件(.vcxproj 文件)中定义的项目设置,所以可以使用属性表创建可应用于多个项目的项目配置。因此,在 .vcxproj 文件中定义的项目配置可以继承一个或多个属性表(.props 文件)中的项目设置。有关更多信息,请参见属性继承。
有关演示此概念的任务的信息,请参见:
示例
下面的 .props 文件既包含生成工具属性又包含用户定义的宏。
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros">
<VCROOT>$(DDROOT)\vc</VCROOT>
<VCPROJDEFAULTS>$(BINDIR)\VC8\VCProjectDefaults</VCPROJDEFAULTS>
<INCLUDEPATH>$(VCROOT)\Inc</INCLUDEPATH>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<ForcedIncludeFiles>warning.h</ForcedIncludeFiles>
</ClCompile>
<Link>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<BuildMacro Include="VCROOT">
<Value>$(VCROOT)</Value>
</BuildMacro>
<BuildMacro Include="VCPROJDEFAULTS">
<Value>$(VCPROJDEFAULTS)</Value>
</BuildMacro>
<BuildMacro Include="INCLUDEPATH">
<Value>$(INCLUDEPATH)</Value>
</BuildMacro>
</ItemGroup>
</Project>