如何在c ++头文件上使用gdb?

Cho*_*ong 9 c++ debugging gdb header

我试图在网上搜索这个问题,但似乎我无法找到解决问题的好方法.好吧,我正在尝试使用gdb来调试我的c ++程序.该程序由一个简单的main.cpp和一个model.h组成.编译命令是

g++ -Wall -g -c main.cpp
g++ -Wall -g main.o -o OUTPUT
Run Code Online (Sandbox Code Playgroud)

由于几乎所有算法都存储在model.h中,我需要调试该头文件而不是cpp文件.但是,每当我试图在标题上放置一个断点时

tbreak model.h:163
Run Code Online (Sandbox Code Playgroud)

gdb总是给我一条消息"没有名为TNFmodel.h的源文件".

GDB的另一个问题断点中,我看到了一个解决方案,即通过"dir"将包含标题的文件夹添加到库中.但我的头文件已经在源文件夹中,并在尝试后

dir ./
Run Code Online (Sandbox Code Playgroud)

问题依然存在.

所以谁知道什么是错的?如何使用gdb调试头文件?

Cho*_*ong 5

正如/sf/users/53252251/所建议的,确保标头在源中的一种方法是通过检查来确定它

info sources
Run Code Online (Sandbox Code Playgroud)

在确保标题本身在源代码中之后(在我的情况下,问题是标题名称中的字母大小写混淆了,并且不知何故它通过了我的 mac book 上的编译),在一行中插入断点头文件工作得很好。