簡體   English   中英

禁止顯示“使用'X'屬性是C ++ 17擴展名”警告

[英]Suppressing “use of the 'X' attribute is a C++17 extension” warnings

我正在使用Qt Creator,並且我的.pro文件中有CONFIG += c++17 ,並且在適當的地方使用了nodiscard屬性。 但是,編譯器仍會不必要地警告use of the '[[nodiscard]]' attribute is a C++17 extension

有沒有一種方法可以消除該特定警告? 甚至所有類型為“ X是C ++ XX擴展名”的警告? 我到處都在尋找將標志包含在CXXFLAGS而沒有成功的標志。

我正在使用Qt Creator版本4.9.2和g ++版本8.3.0

從Qt 5.12開始,您可以使用配置標志CONFIG += c++17

在Qt 5.12之前,您需要通過qmake標志添加編譯器標志:GCC和MinGW的QMAKE_CXXFLAGS += -std=c++17QMAKE_CXXFLAGS += /std:c++latestQMAKE_CXXFLAGS += /std:c++17 < -取決於您使用的MSVC編譯器。

這是Qt qmake手動變量參考,以獲取更多信息

有關任務QTBUG-67527的 Gerrit代碼審查,甚至更多信息

添加此標志后:

  1. 再次在項目上運行qmake

  2. 清理您的項目。 (如有必要,請刪除陰影構建文件夾)

  3. 重建您的項目

暫無
暫無

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

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