内容简介:VS Code作为目前最流行的开发工具之一,自从开始使用VS Code起就变得离不开这个开发神器了,最近由于项目的原因,接触了一些Node.js的C++插件,记录一下如何使用VS Code调试C++模块。设置VS Code的调试模块很容易,你有很多种方法可以实现,下面简单的列出常用的两种:
VS Code作为目前最流行的开发 工具 之一,自从开始使用VS Code起就变得离不开这个开发神器了,最近由于项目的原因,接触了一些Node.js的C++插件,记录一下如何使用VS Code调试C++模块。
1. 设置VS Code的调试模块
设置VS Code的调试模块很容易,你有很多种方法可以实现,下面简单的列出常用的两种:
- 方法一: 按住
Cmd
+Shift
+P
打开命令栏,在命令栏中输入open launch.json
然后选择C++
。 - 方法二:找到左侧边栏的调试按钮,然后在打开的边栏中点击顶部的齿轮图标⚙,然后选择
C++
。
以上两种方式将会创建一个 launch.json
的模板文件,长这样子:
{ "version": "0.2.0", "configurations": [ { "name": "(lldb) Launch", "type": "cppdbg", "request": "launch", "program": "enter program name, for example ${workspaceFolder}/a.out", "args": [], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, "MIMode": "lldb" } ] }
这个文件主要是用来定义你想用什么程序去开始你的调试工作,比如如果我们想要调试通过如下方式运行的代码 node test/vtshaver.test.js
(用node运行 test/vtshaver.test.js
文件)。我们只需要改变配置中的 program
成node的绝对地址(你可以使用 which node
找到当前Node版本的地址)。设置好node之后,就需要配置启动参数 args
,这里我们启动的是 test/vtshaver.test.js
文件,找到这个文件的绝对地址,然后配置上去即可。
另外,由于是C++的模块,我们需要在代码运行之前进行编译C++,所以我们可以通过 preLaunchTask
这个字段来配置,将它配置成 npm: build:dev
,这样没次我们调试任务启动之前,VS Code都会自动的执行相应的命令
"preLaunchTask": "npm: build:dev",
最终这个配置文件可能长这个样子:
{ "version": "0.2.0", "configurations": [ { "name": "(lldb) Launch", "type": "cppdbg", "request": "launch", "preLaunchTask": "npm: build:dev", "program": "/Users/mapbox-mofei/.nvm/versions/node/v8.11.3/bin/node", "args": ["/Users/mapbox-mofei/dev/mapbox/vtshaver/test/vtshaver.test.js"], "stopAtEntry": false, "cwd": "${workspaceFolder}", "environment": [], "externalConsole": true, "MIMode": "lldb" } ] }
现在打开相应的C++文件,然后点击左边行数边的空白处去添加一个断点(可以看到行数的左边会出现一个绿色的小圈圈)。然后回到调试窗口(点击左边导航栏的调试按钮),找到上方的绿色启动按钮,点击它!
如果你能正确的运行起来的话,那么恭喜你,你现在已经可以使用VS Code来调试C++代码了,程序会自动的停止在断点处,然后你也可以把鼠标放在任何相关的变量上去查看变量的内容。如果你想让程序继续进行,只需要点击顶部的导航按钮即可。
以上所述就是小编给大家介绍的《如何使用VS Code调试Node.js C++ Addon 模块》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Python 调试模块 ipdb
- iOS常用调试方法:断点调试
- 断点调试和日志调试之间的平衡点:函数计算调试之 Python 篇
- .NET高级调试系列-Windbg调试入门篇
- VisualStudio 通过外部调试方法快速调试库代码
- GDB 调试 Mysql 实战(二)GDB 调试打印
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Effective JavaScript
David Herman / Addison-Wesley Professional / 2012-12-6 / USD 39.99
"It's uncommon to have a programming language wonk who can speak in such comfortable and friendly language as David does. His walk through the syntax and semantics of JavaScript is both charming and h......一起来看看 《Effective JavaScript》 这本书的介绍吧!