第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何從庫(kù)頭中隱藏GCC警告?

如何從庫(kù)頭中隱藏GCC警告?

臨摹微笑 2019-10-08 09:45:15
我有一個(gè)使用log4cxx,boost等庫(kù)的項(xiàng)目,其標(biāo)頭會(huì)生成很多(重復(fù))警告。有沒(méi)有一種方法可以抑制來(lái)自庫(kù)包含(例如#include <some-header.h>)或來(lái)自某些路徑的包含的警告?我想在項(xiàng)目代碼上照常使用-Wall和/或-Wextra,而不會(huì)模糊相關(guān)信息。我目前在make輸出上使用grep,但是我想要更好的東西。
查看完整描述

3 回答

?
哈士奇WWW

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個(gè)贊

對(duì)于使用CMake的用戶,您可以修改include_directories指令以包括SYSTEM禁止顯示此類標(biāo)題警告的符號(hào)。


include_directories(SYSTEM "${LIB_DIR}/Include")

                               ^^^^^^


查看完整回答
反對(duì) 回復(fù) 2019-10-08
?
蕪湖不蕪

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以使用編譯指示。例如:


// save diagnostic state

#pragma GCC diagnostic push 


// turn off the specific warning. Can also use "-Wall"

#pragma GCC diagnostic ignored "-Wunused-but-set-variable"


#include <boost/uuid/uuid.hpp>

#include <boost/uuid/uuid_generators.hpp>

#include <boost/uuid/uuid_io.hpp>

#include <boost/lexical_cast.hpp>


// turn the warnings back on

#pragma GCC diagnostic pop


查看完整回答
反對(duì) 回復(fù) 2019-10-08
?
米琪卡哇伊

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊

#pragma是對(duì)編譯器的指令。您可以在#include之前設(shè)置某些內(nèi)容,并在之后將其禁用。


您也可以在命令行中執(zhí)行此操作。


另一個(gè)GCC頁(yè)面專門關(guān)于禁用警告。


我會(huì)選擇在源代碼中使用#pragma,然后提供您為什么禁用警告的 合理原因(作為注釋)。這意味著要對(duì)頭文件進(jìn)行推理。


GCC通過(guò)對(duì)警告類型進(jìn)行分類來(lái)解決此問(wèn)題。您可以將它們分類為警告或被忽略。先前鏈接的文章將向您顯示可能禁用了哪些警告。


注意:您也可以使用屬性按摩源代碼以防止某些警告。但是,這使您與GCC緊密相關(guān)。


注意2:GCC還使用了Microsoft編譯器中使用的pop / push接口 -Microsoft通過(guò)此接口禁用警告。我建議您對(duì)此進(jìn)行進(jìn)一步調(diào)查,因?yàn)槲沂仓敛恢朗欠裼锌赡堋?/p>


查看完整回答
反對(duì) 回復(fù) 2019-10-08
  • 3 回答
  • 0 關(guān)注
  • 691 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)