2017-09-05 131 views
0

在我们的代码库中,我们使用的是libfixmath,它是一个用于基于其计算浮点值的库。因此,这些值本身都是整数,但我们希望调试器在停止断点时将它们显示为浮点数。LLDB调试器 - 定义自定义类型显示

我们在OSX上使用AppCode作为IDE,在C++和Objective-C中为iOS创建应用程序(如果有的话)。

我们怎样才能做到这一点?

回答

1

lldb有一种方法可以为特定类型提供自定义格式。看看这里的细节:

http://lldb.llvm.org/varformats.html

唯一的限制是,这个设施映射类型 - >格式化选项。所以你不能像“如果我在某些情况下看到一个int,把它看作一个浮点数”这样的事情,你只能对所有的int进行这样的操作。但是如果你有一个包含有问题的包装类型,你可以很容易地编写一个格式化程序来重新解释包装类型的内容。

LLDB API将使用上述的数据格式化程序呈现值,所有显示数据的命令行命令也会如此。 AppCode可能使用lldb的gdb-MI接口实现,我不认为它支持数据格式化器。因此,您可能会也可能无法在本地人视图中看到结果。

相关问题