首页 > 编程语言 >VScode配置支持c++11和配置自动编译调试功能

VScode配置支持c++11和配置自动编译调试功能

时间:2022-12-20 17:38:24浏览次数:55  
标签:11 VScode c++ vscode json workspaceFolder 目录 调试


VScode配置支持c++11和配置自动编译调试功能

  • ​​1 在工程目录下新建.vscode目录​​
  • ​​2 在.vscode目录下创建c_cpp_properties.json文件内容如下​​
  • ​​2.1 添加c_cpp_properties.json后,关于c++11的相关类型或字段函数都可以正常识别了(如:atomic,auto,to_string等)​​
  • ​​3 在.vscode目录下创建launch.json文件内容如下​​
  • ​​4 在.vscode目录下创建tasks.json文件内容如下​​
  • ​​5 在CMakeLists.txt添加如下内容,才能正常进行调试​​
  • ​​6 验证,在main中打一个断点,然后F5调试运行​​


提示:以下是本篇文章正文内容,下面案例可供参考

1 在工程目录下新建.vscode目录

VScode配置支持c++11和配置自动编译调试功能_配置自动调试

2 在.vscode目录下创建c_cpp_properties.json文件内容如下

{
"configurations": [
{
"name": "Ubuntu",
"includePath": ["${workspaceFolder}/**", "${workspaceFolder}/include/*"], // 需要更具自己的实际工程添加定义的头文件路径
"defines": ["_DEBUG", "UNICODE", "_UNICODE"],
"windowsSdkVersion": "10.0.17763.0",
//"compilerPath": "", // g++所在路径
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "${default}"
}
],
"version": 4
}

2.1 添加c_cpp_properties.json后,关于c++11的相关类型或字段函数都可以正常识别了(如:atomic,auto,to_string等)

3 在.vscode目录下创建launch.json文件内容如下

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++ - 生成和调试文件",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/SimulateSystemServer",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "Build", // 要执行的任务的label名
"miDebuggerPath": "/usr/bin/gdb"
}
]
}

4 在.vscode目录下创建tasks.json文件内容如下

{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"options": {
"cwd": "${workspaceFolder}/build"
},
"tasks": [
{
"label": "cmake",
"type": "shell",
"command": "cmake",
"args": [
".."
]
},
{
"label": "make",
"group": {
"kind": "build",
"isDefault": true
},
"command": "make", // windows: mingw32-make
"args": [

]
},
{
"label": "Build",
"dependsOrder": "sequence", // 按列出顺序执行任务依赖项
"dependsOn":[
"cmake",
"make"
]

}
]
}

5 在CMakeLists.txt添加如下内容,才能正常进行调试

set(CMAKE_BUILD_TYPE Debug)

6 验证,在main中打一个断点,然后F5调试运行

VScode配置支持c++11和配置自动编译调试功能_编辑器_02


标签:11,VScode,c++,vscode,json,workspaceFolder,目录,调试
From: https://blog.51cto.com/u_15918664/5956341

相关文章

  • c++ 去除字符串首尾的空白字符
    c++去除字符串首尾的空白字符​​方法一使用find_first_not_of和find_last_not_of​​​​方法二使用正则表达式(c++11)​​​​测试​​​​测试结果​​方法一使用find_f......
  • C++中的class
    用classqxz{};定义一个类,其中private:以下的每一行都是私有成员,而public:以下的每一行都是公有成员(两者可以反复交叉出现多次)。私有成员只能被自己类中的成员函数访问,而......
  • 安装 Python 包时解决 Microsoft visual c++ 14.0 is required 问题
     参考:​​http://www.hongweipeng.com/index.php/archives/1532/​​ 在windows上安装scrapy时经常会遇到这个问题,安装其他组件也可能会遇到。但问题解决办法都是大致......
  • vscode 调试 C++/JavaScript
     MicrosoftVisualStudioCode  在调试JavaScript代码时,其中三种比较简单:1.使用Chrome等浏览器调试2. 使用Ctrl+Shift+B 快捷键运行html文件,需要在Task......
  • ubuntu20.04下C++调用接口解压缩zip文件
     https://github.com/Lecrapouille/zipper Compiling/InstallingTodownloadtheprojectandcompileit:gitclonehttps://github.com/lecrapouille/zipper.g......
  • c++使用this的一个实例
    转载:原文地址正在做一个鼠标绘图程序,在一个class中需要调用鼠标响应函数setMouseCallback,由于setMouseCallback中的mousecallback不支持调用non-staticfunction,遇到了很......
  • vscode opencv代码无法补全
    使用vscode编程过程遇到opencv相关的代码不能补全解决办法:c_cpp_properties.json文件添加如下内容,//因为代码中include<opencv2/...>,所以下面的路径写到"/usr/include/ope......
  • 微服务11:熔断、降级的Hystrix实现(附源码)
    微服务1:微服务及其演进史微服务2:微服务全景架构微服务3:微服务拆分策略微服务4:服务注册与发现微服务5:服务注册与发现(实践篇)微服务6:通信之网关微服务7:通信之RPC微服务......
  • C++冷门语法/关键字
    这篇文章将用来记录平时第一次遇到的语法或关键字,仅记录我使用到的功能,不进行拓展。volatileC/C++中的volatile关键字和const对应,用来修饰变量,通常用于建立语言级别......
  • c++用rapidjson解析json串
    业务需要消息传递以json形式,使用rapidjson。把json所有的值对存进一个map里,再根据业务需要判断指令。定义usingrapidjson_object=rapidjson::GenericObject<false,r......