vscode(MSVC)进行c++开发的时,在debug时查看一个eigen数组内部的数值

vscode进行c++开发的时,在debug时查看一个eigen数组内部的数值

问题描述

使用vscode进行c++开发,编译器是MSVC,在debug的时候想查看一个eigen数组的数值,但是默认情况下是显示不出来的,需要进行一些设置。

解决方案

vscode官网的一篇文章显示支持使用.natvis文件来可视化,但是.natvis文件需要自己写,于是我寻找是否有已经写好的文件可以直接使用,最终在github上找到了一个仓库可以直接使用,如下图所示

将下载的Eigen.natvis文件复制到C:\Users\%USERPROFILE%\.vscode\extensions\ms-vscode.cpptools-*\debugAdapters\vsdbg\bin\Visualizers文件夹,这里每个人的用户名和cpptools版本不同,文件夹也就不同,例如我的路径就是
C:\Users\user\.vscode\extensions\ms-vscode.cpptools-1.26.3-win32-x64\debugAdapters\vsdbg\bin\Visualizers

然后再进行debug,就可以看到eigen数组里面每个元素的数值。

拓展

其他可视化

这个github仓库中,还有其他一些库的debug可视化文件,例如OpenCV.natvis,但是我没有试过效果如何。

使用visual studio时的可视化

本教程是基于使用vscode开发c++的操作,如果使用visual studio,也可以将.natvis文件拷贝到visual studio的某个目录中,但具体实现我没有尝试。

使用别的编译器的可视化

本文是基于MSVC编译器的操作,别的编译器(GCC、Clang等)是否可以用这种方法,暂不清楚。

相关推荐
会开花的二叉树几秒前
继承与组合:C++面向对象的核心
java·开发语言·c++
潮汐退涨月冷风霜1 小时前
数字图像处理(1)OpenCV C++ & Opencv Python显示图像和视频
c++·python·opencv
第七序章2 小时前
【C++STL】list的详细用法和底层实现
c语言·c++·自然语言处理·list
逆小舟4 小时前
【Linux】人事档案——用户及组管理
linux·c++
风中的微尘8 小时前
39.网络流入门
开发语言·网络·c++·算法
混分巨兽龙某某9 小时前
基于Qt Creator的Serial Port串口调试助手项目(代码开源)
c++·qt creator·串口助手·serial port
小冯记录编程9 小时前
C++指针陷阱:高效背后的致命危险
开发语言·c++·visual studio
C_Liu_10 小时前
C++:类和对象(下)
开发语言·c++
coderxiaohan10 小时前
【C++】类和对象1
java·开发语言·c++
阿昭L10 小时前
MFC仿真
c++·mfc