使用vscode debug 查看eigen变量的方法

设置成适合人看的格式

在使用eigen库的时候,有时候需要使用调试功能。但是没有设置之前,eigen变量的显示是这样的:不是人眼能看的格式

设置方法:

bash 复制代码
$ mkdir -p ~/gdbExtensions

下载 https://gitlab.com/libeigen/eigen/-/blob/master/debug/gdb/printers.py

https://gitlab.com/libeigen/eigen/-/blob/master/debug/gdb/**init** .py

到~/gdbExtensions

然后执行下面命令:

注意将替换为自己机器的用户名,比如 zyq

bash 复制代码
$ cd ~
$ echo -en "\
python \n\
import sys \n\
sys.path.insert(0, '/home/<USER>/gdbExtensions') \n\
from printers import register_eigen_printers \n\
register_eigen_printers (None) \n\
end\n" >> ~/.gdbinit

~/.gdbinit 是gdb启动时加载的文件,这样gdb启动时就会加载gdbExtensions里面的脚本来处理eigen

设置完后显示的eigen变量是这样的:

怎么改回原始形式

要想按照原始形式显示,只要把.gdbinit 文件mv走就行,或者后面熟悉了gdbinit语法,可以改一改

相关推荐
会员源码网1 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
xlp666hub3 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
不想写代码的星星4 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub20 小时前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
不想写代码的星星1 天前
C++继承、组合、聚合:选错了是屎山,选对了是神器
c++
不想写代码的星星2 天前
std::function 详解:用法、原理与现代 C++ 最佳实践
c++
樱木Plus4 天前
深拷贝(Deep Copy)和浅拷贝(Shallow Copy)
c++
blasit6 天前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
地平线开发者7 天前
SparseDrive 模型导出与性能优化实战
算法·自动驾驶
地平线开发者7 天前
地平线 VP 接口工程实践(一):hbVPRoiResize 接口功能、使用约束与典型问题总结
算法·自动驾驶