![](/img/trans.png)
[英]How do I know which C++ source files include a specific h header file
[英]How do I know which header is being included?
我正在編寫一組單元測試,並為單元測試需要編譯和鏈接的類創建存根。 我想知道是否包含真正的標頭,或者是否包含針對我要扎根的這些標頭的false(stub)標頭。
關於如何測試的任何想法?
沒關系,我找到了解決方案。 您可以簡單地將以下內容放在假標題中:
#pragma message ("Mock is being included")
並且會在編譯時打印出來,因此您知道哪個標題正在#include
。
如果您有權訪問GCC / G ++,請使用-M
選項。
如果使用Visual Studio,請執行以下操作:依次轉到“項目設置”,“配置屬性”,“ C / C ++”,“高級”和“顯示包含”。 它激活編譯器開關/showIncludes
。
兩者都將在編譯時輸出依賴項列表。
比必須修改頭文件要好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.