美文网首页
macOS VSCode 调试C++ STL容器显示size==

macOS VSCode 调试C++ STL容器显示size==

作者: neroop | 来源:发表于2019-11-28 02:10 被阅读0次

在macOS下使用VS code进行C++调试时,碰到vector、set、map等类的内容无法正常显示,只显示为size == 0

在VS code的Github issues有许多讨论,大体提出了两种解决方案。

方案一

安装CodeLLDB插件,使用简单,只需将launch.jsontype设置为lldb即可(原生类型一般为cppdbgcppvsdbg)。为了标准输入与输出,另外还需要添加terminal字段。

    {
      "name": "(lldb) CodeLLDB plugin",
      "type": "lldb", // 使用CodeLLDB插件进行Debug
      "request": "launch",
      "preLaunchTask": "clang++ compile",
      "environment": [],
      "cwd": "${workspaceFolder}",
      "program": "${workspaceFolder}/build/${fileBasenameNoExtension}",
      "args": [],
      "stopAtEntry": false,
      "MIMode": "lldb",
      "terminal": "integrated"  // CodeLLDB插件调出Terminal重定向标准输入
    },

方案二

使用lldb-mi,在launch.jsonmiDebuggerPath字段指定路径/path/to/lldb-mi

    {
      ...
      ...
      "MIMode": "lldb",
      "miDebuggerPath": "/path/to/lldb-mi"
      ...
      ...
    },

但遗憾的是Xcode 11貌似移除了lldb-mi,只能向前使用Xcode 10,lldb-mi位于/Applications/Xcode.app/Contents/Developer/usr/bin/lldb-mi

当然也可以通过brew安装llvm的方式,获取lldb-mi

brew install llvm

但在我的MBP环境中使用brew安装的lldb-mi有BUG,不能使用,暂未解决,有空再倒腾。

Reference

VS Code Github issue#2389
VS Code Github issue#1768

相关文章

  • macOS VSCode 调试C++ STL容器显示size==

    在macOS下使用VS code进行C++调试时,碰到vector、set、map等类的内容无法正常显示,只显示为...

  • [C++] STL 容器

    参考:[C++] STL 容器 (一) - 基本介紹[C++] STL 容器 (二) - Iterator 部分示例:

  • C++ STL(1)

    C++ STL(1) from my csdn blog C++标准模板库 容器C++标准模板库提供了10种容器基...

  • c++ STL

    一.STL: standard template library(C++标准模板库) STL共有六大组件:容器、算...

  • 浅析STL allocator

    STL allocator是做什么用? 在学习STL中containers会发现C++ STL里定义了很多的容器(...

  • C++ STL 之 vectot(三)

    今天我们继续更新 C++ STL 中 vector 容器的使用 vector 容器增加元素 vector 容器增加...

  • STL与泛型编程 第一周 博览网

    重要的C++参考网站:cplusplus.com CppReference STL六大容器 容器containe...

  • C++ STL 之 vectot(四)

    今天我们继续更新 C++ STL 中 vector 容器的使用 vector 容器删除元素 使用 clear() ...

  • Mac使用vscode调试c/c++

    mac上在vsCode上进行c/c++程序的调试 目的在mac上使用vscode 和 lldg/gdb调试工具 对...

  • 2019-01-16 Ubuntu/Linux 用vscode

    参考文章 Ubuntu/Linux 用vscode 运行/调试 c++ 程序在ubuntu上搭建vscode的开发...

网友评论

      本文标题:macOS VSCode 调试C++ STL容器显示size==

      本文链接:https://www.haomeiwen.com/subject/jlkvwctx.html