準備
- 安裝 VSCode 及 C++ 插件。
- 通過 MSYS2 安裝 MinGW-w64 工具鏈,為您提供必要的工具來編譯代碼、調試代碼并配置它以使用IntelliSense。參考:Windows 中的 Linux 開發工具鏈
驗證安裝:
gcc --version
g++ --version
gdb --version
三個核心配置文件
- tasks.json: 用于設置編譯指令
- launch.json: 用設置調試指令
- c_cpp_properties.json 編譯器及: IntelliSense 設置
tasks.json 編譯調試單個文件
VSCode 檢測到 C++ 文件,第一次運行程序時, C++ 插件根據選擇的編譯器創建一個 task.json
文件,您可以在項目 .vscode
文件夾中找到。
"type": "cppbuild",
"label": "編譯C++文件",
"command": "D:\\program\\msys64\\ucrt64\\bin\\g++.exe",
"args": ["-fdiagnostics-color=always","-g","${file}","-o","${fileDirname}\\${fileBasenameNoExtension}.exe"
],
該任務指示 g++ 獲取當前活動文件(${file}
),對其進行編譯,并在當前文件所在目錄(${fileDirname}
)中生成一個輸出文件(通過 -o
選項)。輸出文件的名稱與當前活動文件的主文件名相同,僅擴展名改為 .exe
( ${fileBasenameNoExtension}.exe
)。該操作將生成 <file_name>.exe
。
通過 launch.json 定制調試行為
默認情況下會自動生成調試配置。在某些情況下,你可能希望自定義調試配置,例如指定要在運行時傳遞給程序的參數,這通過 launch.json 文件來實現。
可通過在運行和調試界面添加配置實現,選擇c++(gdb)
啟動,會自動生成 launch.json 文件。
{"configurations": [{"name": "編譯并調試c++文件", // 任務名稱"type": "cppdbg","request": "launch","program": "${fileDirname}\\${fileBasenameNoExtension}.exe","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "gdb","miDebuggerPath": "C:\\msys64\\ucrt64\\bin\\gdb.exe","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true},{"description": "Set Disassembly Flavor to Intel","text": "-gdb-set disassembly-flavor intel","ignoreFailures": true}],"preLaunchTask": "編譯C++文件" // 前置任務}],"version": "2.0.0"
}
三、更多設置 c_cpp_properties.json
如果您希望對C/C++擴展有更多的控制,您可以創建一個c_cpp_properties.json
文件,它將允許您更改設置,例如編譯器的路徑,包括路徑,c++標準(默認是c++ 17)等。Ctrl+Shift+P
在命令面板中輸入“C/C++: Edit Configurations(UI)”,可以查看C/C++配置界面。
{"configurations": [{"name": "GCC","includePath": ["${workspaceFolder}/**"],"defines": ["_DEBUG", "UNICODE", "_UNICODE"],"windowsSdkVersion": "10.0.22000.0",// 推斷c++標準庫頭文件的路徑。當擴展知道在哪里可以找到這些文件時,它可以提供智能補全和Go to Definition導航等功能。"compilerPath": "D:/program/msys64/ucrt64/bin/g++.exe", "cStandard": "c17","cppStandard": "c++20","intelliSenseMode": "windows-gcc-x64"}],"version": 4
}
插件
可以通過安裝 C/C++ Runner
插件,自動生成配置文件,并可視化操作(如切換編譯路徑、通過點擊按鈕編譯、運行、調試)