最近買了本C++20的書,想要自己設定下在VScode的環境
例子程式碼:
#include <iostream>
#include <format>
int main()
{
std::cout << std::format("Hello, world! {0}", 123) << std::endl;
// 輸出:Hello, world! 123
std::string str = std::format("The answer is {0}", 42);
// str 的值為 "The answer is 42"
int a = 1, b = 2;
std::cout << std::format("a = {0}, b = {1}", a, b) << std::endl;
// 輸出:a = 1, b = 2
}
以下是詳細步驟:
1.首先下vscode的C++外掛
輸入了程式碼但不能直接編譯執行程式碼,所以我們還需要下載最新版的C++20 MinGW。
2、去官網下載gcc最新版本
官網的地址
https://www.mingw-w64.org/
點選下面的Downloads
點選進入Downloads頁面後找到這個超連結MingW,再次點選
點選這裡的GitHub按鈕
跳轉到Github網站頁面中,頁面是這個樣子(本文寫的日期是2023年11月24日,頁面可能不符合,選擇最新版本下載就好)
找到這個下載
如果下載失敗或者無法上GitHub的,可以使用我的連結分享,也能支援C++20
連結:https://pan.baidu.com/s/1E5M-olqoC5d0w465rWYgyA?pwd=qxc2
提取碼:qxc2
下載完成後就去資料夾中解壓,解壓後大概是這個樣子
設定計算機中的環境變數,在path中新增bin的路徑,我自己是安裝在C槽下,如果你們下載在其他盤中,選擇成自己的路徑,不需要一定C槽
在cmd命令提示字元視窗中輸入gcc -v檢視版本
出現這些內容就說明你gcc設定環境變數好了
3.去設定VSCode檔案
來到VS Code,去修改cpp的組態檔,去 c_cpp_properties.json 檔案裡,在"includePath"下加入4條標頭檔案路徑,然後把"compilerPath"改掉,"cppStandard"直接換成c++20或c++23 。
這裡的執行就算編譯失敗也無所謂,先編譯生成.vscode資料夾
你cpp資料夾中.vscode資料夾中
我的c_cpp_properties.json
{
"configurations": [
{
"name": "Win32",
"includePath": [
"C:\\Program Files\\mingw64\\include",
"C:\\Program Files\\mingw64\\x86_64-w64-mingw32\\include",
"C:\\Program Files\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\12.2.0\\include",
"C:\\Program Files\\mingw64\\lib\\gcc\\x86_64-w64-mingw32\\12.2.0\\include\\c++",
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "C:\\Program Files\\mingw64\\bin\\g++.exe",
"cStandard": "c17",
"cppStandard": "c++23",
"intelliSenseMode": "windows-gcc-x64"
}
],
"version": 4
}
然後進入到 tasks.json ,對args、command和label做一些修改,command也可以直接寫g++;args裡一定要寫"-std=c++2a"或者"-std=c++23"。
{
"tasks": [
{
"type": "cppbuild",
"label": "C/C++: g++.exe 生成活動檔案",
"command": "C:\\Program Files\\mingw64\\bin\\g++.exe",
"args": [
"-fdiagnostics-color=always",
"-g",
"${file}",
"-std=c++23",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${fileDirname}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
},
"detail": "偵錯程式生成的任務。"
}
],
"version": "2.0.0"
}
重新啟動一下vscode,然後編譯應該能執行了
輸出結果
4.設定code Runner,以支援C++20
首先去外掛中下載coderunner,下載後重啟vscode,然後右鍵點選codeRunner進去外掛的擴充套件設定中
設定預設程式語言C++
然後找到Executor Map,點 「在 settings.json 中編輯」,
在cpp那一行g++後面加上 -std=c++2a(這裡不能支援23),儲存然後返回程式碼 。
我的那行程式碼
現在重啟vscode後再次返回cpp程式碼中,右鍵Run Code,現在就能直接編譯執行了
現在就完成了VSCode對於C++20的設定,希望能幫助到大家。