簡體   English   中英

%(AdditionalIncludeDirectories)含義

[英]%(AdditionalIncludeDirectories) meaning

認為這將是相當簡單但不知何故我找不到關於此的參考。

在MSVC Include目錄中,有一個Additional Include Directories設置。 設置如下

.. \\ PROJECT1; %(AdditionalIncludeDirectories)

理解第一部分是程序搜索附加程序頭包含的路徑。 那么“%(AdditionalIncludeDirectories)”怎么樣? 這是什么意思?

它似乎不是一個宏,我理解的是以“$”為首,例如$ MACRO

謝謝

回答

使用項目屬性的文檔中有一個關於“項宏”的部分:

項目宏

語法為%(name) 對於文件,項宏僅適用於該文件 - 例如,您可以使用%(AdditionalIncludeDirectories)指定僅適用於特定文件的包含目錄。 這種項宏對應於MSBuild中的ItemGroup元數據。 當它在項目配置的上下文中使用時,項宏將應用於特定類型的所有文件。 例如,C / C ++ 預處理器定義配置屬性可以采用%(PreprocessorDefinitions)項宏,該宏適用於項目中的所有.cpp文件。 這種項宏對應於MSBuild中的ItemDefinitionGroup元數據。 有關更多信息,請參閱項目定義

討論

我在一個前開發人員接管的項目中遇到了完全相同的問題:他的附加包含目錄是C:\\Users\\t-tshmit\\Downloads\\DirectXTK;$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)

附加包含目錄彈出窗口

奇怪的是, %(AdditionalIncludeDirectories)元素不包含在編輯框中

其他包含目錄的編輯框

環顧網絡我找不到這個,但它顯然是一個正在使用的模式,例如http://www.steptools.com/support/stdev_docs/help/settings_vc10.html中使用的屏幕截圖可能包含%(AdditionalIncludeDirectories)元素。

Additional Include Directories編譯器選項AdditionalIncludeDirectories VCCL編譯器工具屬性的文檔不包含此%(NAME)模式。

https://docs.microsoft.com/en-us/cpp/build/reference/common-macros-for-build-commands-and-properties?view=vs-2019

它們被稱為“項目元數據宏”。

在Visual Studio 2008和Visual Studio 2010之間,C ++的構建系統發生了顯着變化。早期項目類型中使用的許多宏已更改為新的宏。 這些宏不再使用或已被一個或多個等效屬性或項元數據宏(%(名稱))值替換。 標記為“已遷移”的宏可以由項目遷移工具更新。 如果包含宏的項目從Visual Studio 2008或更早版本遷移到Visual Studio 2010,則Visual Studio會將宏轉換為等效的當前宏。 更高版本的Visual Studio無法將項目從Visual Studio 2008及更早版本轉換為新項目類型。 您必須分兩步轉換這些項目; 首先將它們轉換為Visual Studio 2010,然后將結果轉換為較新版本的Visual Studio。 有關更多信息,請參閱潛在升級問題概述。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM