VS-Code 配置C++環境
阿新 • • 發佈:2021-07-07
建立.vscode資料夾
在資料夾下配置如下4個檔案
1.launch.json
1 { //laumch.json 2 "version": "0.2.0", 3 "configurations": [ 4 { 5 "name": "(gdb) Launch", 6 "type": "cppdbg", 7 "request": "launch", 8 "program": "${fileDirname}/${fileBasenameNoExtension}.exe", 9 "args": [], 10 "stopAtEntry": false, 11 "cwd": "${workspaceFolder}", 12 "externalConsole": false, //強調一下,我習慣用vscode自帶的終端,所以你不習慣可以改為true 13 "MIMode": "gdb", 14 "miDebuggerPath": "C:\\Program Files (x86)\\mingw-w64\\i686-8.1.0-posix-dwarf-rt_v6-rev0\\mingw32\\bin\\gdb.exe",// 指定偵錯程式所在路徑,如果你的minGW裝在別的地方,則要改成你自己的路徑,注意間隔是\\ 15 "setupCommands": [ 16 { 17 "description": "Enable pretty-printing for gdb", 18 "text": "-enable-pretty-printing", 19 "ignoreFailures": true 20 }21 ], 22 "preLaunchTask": "Build" 23 } 24 ]
2.tasks.json
{ //tasks.json "version": "2.0.0", "tasks": [ { "label": "Build", "command": "g++", "args": [ "-g", "-Wall", "-std=c++11", "-lm", "${file}", "-o", "${fileDirname}/${fileBasenameNoExtension}.exe" ], "presentation": { "reveal": "always", "echo": true, "focus": true, "panel": "new" //每次執行這個task時都新建一個終端面板,也可以設定為shared,共用一個面板,不過那樣會出現‘任務將被終端重用’的提示,比較煩人 }, "problemMatcher": { "owner": "cpp", "fileLocation": "absolute", "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(error):\\s+(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5 } } }, { "label": "Run", "type": "shell", "dependsOn": "Build", "command": "${fileDirname}/${fileBasenameNoExtension}.exe", "args": [], "presentation": { "reveal": "always", "focus": true }, "problemMatcher": [], "group": { "kind": "test", "isDefault": true } } ] }
3.settings.json
{ //settings.json "files.associations": { "*.m": "matlab", "iostream": "cpp", "new": "cpp", "deque": "cpp", "string": "cpp", "vector": "cpp", "array": "cpp", "queue": "cpp", "forward_list": "cpp", "list": "cpp", "string_view": "cpp", "ostream": "cpp", "fstream": "cpp", "future": "cpp", "shared_mutex": "cpp", "sstream": "cpp", "thread": "cpp", "*.tcc": "cpp", "unordered_map": "cpp", "unordered_set": "cpp", "memory": "cpp", "optional": "cpp", "istream": "cpp", "streambuf": "cpp", "functional": "cpp", "regex": "cpp", "tuple": "cpp", "valarray": "cpp", "random": "cpp", "atomic": "cpp", "bitset": "cpp", "cctype": "cpp", "cfenv": "cpp", "charconv": "cpp", "chrono": "cpp", "cinttypes": "cpp", "clocale": "cpp", "cmath": "cpp", "codecvt": "cpp", "complex": "cpp", "condition_variable": "cpp", "csetjmp": "cpp", "csignal": "cpp", "cstdarg": "cpp", "cstddef": "cpp", "cstdint": "cpp", "cstdio": "cpp", "cstdlib": "cpp", "cstring": "cpp", "ctime": "cpp", "cuchar": "cpp", "cwchar": "cpp", "cwctype": "cpp", "exception": "cpp", "algorithm": "cpp", "iterator": "cpp", "map": "cpp", "memory_resource": "cpp", "numeric": "cpp", "ratio": "cpp", "set": "cpp", "system_error": "cpp", "type_traits": "cpp", "utility": "cpp", "initializer_list": "cpp", "iomanip": "cpp", "iosfwd": "cpp", "limits": "cpp", "mutex": "cpp", "scoped_allocator": "cpp", "stdexcept": "cpp", "typeindex": "cpp", "typeinfo": "cpp" } }
4.c_cpp_properties.json
{ //c_cpp_properties.json "configurations": [ { "name": "Win32", "includePath": [ "${workspaceRoot}", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/i686-w64-mingw32", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/backward", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/tr1", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include" ], "defines": [ "_DEBUG", "UNICODE", "__GNUC__=6", "__cdecl=__attribute__((__cdecl__))" ], "intelliSenseMode": "gcc-x64", "browse": { "path": [ "${workspaceRoot}", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/i686-w64-mingw32", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/backward", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include/c++/tr1", "C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/lib/gcc/i686-w64-mingw32/8.1.0/include" ] }, "limitSymbolsToIncludedHeaders": true, "databaseFilename": "", "compilerPath": "C:\\Program Files (x86)\\mingw-w64\\i686-8.1.0-posix-dwarf-rt_v6-rev0\\mingw32\\bin\\gcc.exe", "cStandard": "gnu17", "cppStandard": "gnu++14" } ], "version": 4 }