VC PlusPlus:MSBuild アイテムグループ変数

提供:yonewiki
2024年2月15日 (木) 22:06時点におけるYo-net (トーク | 投稿記録)による版 (→‎アイテムグループの基礎)

VC PlusPlus:MSBuildに戻る。

概要

 アイテムグループ変数は@(ItemGroup)のような形式でアットマークを使って表記する変数です。


アイテムグループの基礎

 タグごとにアイテムグループという概念が存在します。以下のようにTextというアイテムが定義されていたとします。そうするとタグ名Textというアイテムグループが存在することになり、@(Text)で、その内容が出力できます。

<Project ...>
  <ItemGroup>
    <Text Include="doc\a.en.txt" />
    <Text Include="doc\a.ja.txt" />
    <Text Include="doc\a_hpnonstop.en.txt" />
    <Text Include="doc\a_hpnonstop.ja.txt" />
    <Text Include="doc\a.en.txt" />
    <Text Include="doc\a.ja.txt" />
  </ItemGroup>
  <Target Name="MessageText" AfterTargets="Build">
    <Message Text="@ (Text) =@(Text)" />
  </Target>
</Project>

出力結果

@ (Text) = doc\a.en.txt;doc\a.ja.txt;doc\a_hpnonstop.en.txt;doc\a_hpnonstop.ja.txt;doc\a.en.txt;doc\a.ja.txt

 このようにバッチのように複数行にはなりませんが、セミコロンでひとまとめにされたものとして、表示できます。@(text)は@(text->'%(Identity)')のように呼び出したの同じ出力になっています。

 

VC PlusPlus:MSBuildに戻る。