VSCode调试C++代码是否支持类似Visual Studio的tracepoint功能?
VSCode C++场景等效VS Tracepoint功能使用说明
VSCode原生支持和Visual Studio tracepoint完全一致的功能,该功能叫做日志断点(Log Point),你当前调试C++所用的官方组件已经自带该能力,无需额外安装扩展。
操作方法
- 不要直接左键点击行号创建普通断点,而是在需要输出日志的代码行的行号位置点击右键,选择「添加日志断点」选项。如果你之前只找到条件断点,是因为触发的右键菜单位置不对,不要选中已有的普通断点再右键,直接在空白行号位置右键即可看到对应选项
- 在弹出的输入框中填写要输出的日志内容,需要打印变量时直接将变量名用大括号包裹即可,示例:
接口调用完成,返回值:{ret},入参长度:{bufLen} - 日志断点触发时不会中断程序运行,会自动将日志输出到调试控制台,完全不需要在业务代码中插入printf、fprintf等打印语句,不会造成代码冗余。
额外支持能力
- 可与条件断点组合使用:右键已创建的日志断点选择「编辑断点」,可额外设置触发条件,仅满足条件时才输出日志
- 支持内置调试变量输出:可直接在日志模板中使用
{FILE}(当前文件名)、{LINE}(当前行号)、{FUNCTION}(当前函数名)等内置变量,无需手动填写固定信息
你当前使用的msbuild Debug构建流程不需要做任何调整,Debug模式默认生成的调试符号已经可以支持日志断点的正常使用,按你原来的F5调试流程操作即可。
内容的提问来源于stack exchange,提问作者Tryer
相关产品推荐
相关产品推荐

