< 返回版块

freshman 发表于 2024-10-30 17:35

现有的IDE调试都不支持查看复杂变量的值,比如Vec或者Map什么的,里面只要包含了一些结构体在调试窗口中变量的值就无法直接显示,各位大佬平时调试程序的时候都是用什么方式进行调试的?

评论区

写评论
Unic 2024-11-01 11:04

Vscode 的话, debug 可以看 VSC 的文档, 里面有写.

-> Vscode Rust debugging <-

作者 freshman 2024-11-01 09:46

实测使用RustRover将默认的调试器LLDB换成GDB效果最好,暂时满足我的要求了,谢谢大家

作者 freshman 2024-11-01 09:30

如果Vec的项目值是简单类型CodeLLDB是能看到的,但是如果复杂一点也是各种指针地址,我想找一个能一直递归下去看项目值的调试器

--
👇
TinusgragLin: > 不支持查看复杂变量的值,比如Vec或者Map什么的

调试 Rust 的话似乎用 LLDB 更好,在 VS Code 的话可以试一试 CodeLLDB,我之前试了一下,非常地 amazing:装上之后开 debug,本来 Vec 只能看 ptr, len 之类的,现在能直接看到每个项目的值了。

GUO 2024-11-01 09:21

最佳答案,前两天我也遇到按此解决的。 备注:最好删掉CodeLLDB扩展,免得不懂的选错这个

--
👇
c5soft: Windows+VSCode+MSVC调试Rust的方法: 1.安装两个扩展插件:rust-analyzer、C/C++ 2.重新启动VSCode, 等待rust-analyzer分析代码完毕,这个时候,在源代码编辑窗体中fn main上面就会出现Debug的按钮,点击源代码行号的左侧设置断点,点击Debug即可开始调试。

upupnoah 2024-10-31 14:40

rust 项目大了之后, 代码把报错会不灵敏, 大家是怎么解决这个问题的

TinusgragLin 2024-10-30 21:34

不支持查看复杂变量的值,比如Vec或者Map什么的

调试 Rust 的话似乎用 LLDB 更好,在 VS Code 的话可以试一试 CodeLLDB,我之前试了一下,非常地 amazing:装上之后开 debug,本来 Vec 只能看 ptr, len 之类的,现在能直接看到每个项目的值了。

作者 freshman 2024-10-30 19:28

我不是不知道怎么调试,我是想要那种在debug窗口也能直观看到变量值的方法,有相关的工具推荐吗?

--
👇
c5soft: Windows+VSCode+MSVC调试Rust的方法: 1.安装两个扩展插件:rust-analyzer、C/C++ 2.重新启动VSCode, 等待rust-analyzer分析代码完毕,这个时候,在源代码编辑窗体中fn main上面就会出现Debug的按钮,点击源代码行号的左侧设置断点,点击Debug即可开始调试。

作者 freshman 2024-10-30 19:27

习惯用断点调试之后感觉打印很繁琐,有没有什么好用的debug工具?

--
👇
啥都不是: println 走天下

c5soft 2024-10-30 18:45

系统线上跟踪日志报告,推荐使用tracing/tracing-subscriber,能够与tokio异步框架完美协调,日志可显示在屏幕上也可保存到文件中。

c5soft 2024-10-30 18:39

Windows+VSCode+MSVC调试Rust的方法: 1.安装两个扩展插件:rust-analyzer、C/C++ 2.重新启动VSCode, 等待rust-analyzer分析代码完毕,这个时候,在源代码编辑窗体中fn main上面就会出现Debug的按钮,点击源代码行号的左侧设置断点,点击Debug即可开始调试。

啥都不是 2024-10-30 18:08

println 走天下

1 共 11 条评论, 1 页