解決 VSCode 編寫 C++11 代碼報紅問題


問題描述
今天在寫 C++ 代碼的時候用上 C++11 的特性,然后發現 VSCode 雖然可以編譯通過,但是會在相應位置報紅,如下圖所示。

並且在編譯的時候遇到如下警告:

C1.cpp:62:14: warning: 'auto' type specifier is a C++11 extension [-Wc++11-extensions]
for (auto a : vec)
1
2
問題原因:
VSCode 根據編譯參數,無法檢測 C++11 相關語法,因此出現報紅和 warning 等現象。

解決方法
可以按照如下圖步驟執行:

點擊下載的 C/C++ 插件中的小齒輪
選擇 Extension Setting 選項
在 Compiler Args 的選項中,點擊 Edit in setting.json

最后在彈出的 setting.json 文件中加入如下編譯參數:

{
"C_Cpp.default.compilerArgs": [
"-g",
"${file}",
"-std=c++11",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
]
}

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM