想問一下macbook 上的vscode.
如何更新c++ 至 version 11.
int emus{7};
vector heap = {9,3,6,7,4,2,1,3};
這兩行emus 跟 heap 下面都會出現紅線。
我想應該是因為,這些是c++ 11的功能。
但我有去extension裡面c/c++
把C_Cpp > Default: Cpp Standard 跟 C_Cpp > Default: C Standard 都改成c11
再去Clang 的 extension setting.
把Cflags 裡面加入["-std=c++11"]
Cxxflags 裡面也加入 ["-std=c++11"]
但執行上面兩行程式一樣會有紅線及報錯。
不知道是不是還有什麼沒設定到?
目前執行完會出現
error: non-aggregate type 'vector' cannot be initialized with an initializer list
但是我透過
clang++ -std=c++11 test.cpp 會得到 a.out檔案
再去執行 ./a.out 就可以。
但是變成只要每次code有包含c++的功能都只能這樣?
vscode裡面的執行鍵就沒用了?
只能透過下面vscode裡面的complier執行?
非常感謝幫助!!!
最簡單的解決方法是在你的MAC電腦上安裝一個支援 C++11 的編譯器。
在安裝之後,請確保 VSCode 中配置了正確的編譯器路徑。
GCC 和 Clang 都是支援 C++11 的開源編譯器,並且在 MacOS 上都有可用的安裝包。
你可以通過 Homebrew、MacPorts 或者 Xcode Command Line Tools 來安裝。
安裝完成後,你可以在 Visual Studio Code 中配置編譯器的路徑,並編譯你的 C++ 程式碼。