使用GDB自带c++库

Using GDB with Eigen C++ library

本文关键字:c++ 自带 GDB 使用      更新时间:2023-10-16

我使用的是可从http://eigen.tuxfamily.org/下载的Eigen c++库。这是一个便于处理矩阵和数组的c++库。我使用g++编译器和gdb进行调试。然而,我发现我无法打印矩阵的内容(由Eigen提供),而使用gdb。

您可以使用的一个技巧是.data()成员,它为您提供指向包含数据的原始数组的指针。这样,您就可以在GDB中打印它,像这样:

print *X.data()@Length_X

其中X是特征变量,Length_X是行和列的乘积

你必须安装一个gdb扩展,你可以在eigen/debug/gdb/中找到。

文件开头的注释解释了如何安装它

有一个专门为GDB添加特征打印支持的github项目。

它似乎是基于这个答案中链接的代码。