在Xcode中是否可以创建数据断点?

18

Visual Studio 中的数据断点是非常有用的调试工具,我需要在我的当前 iPad 项目中使用类似的工具(指针和内存出现问题)。

在 Xcode 中是否可以创建数据断点?

2个回答

21

以下是Xcode中Watchpoint的文档:

为了监控变量或数据项的值的更改,您可以设置观察点。观察点会在被监视的项目的值更改时暂停程序的执行。只有在程序执行暂停时才能在变量上设置观察点。要在变量上设置观察点,请按照以下步骤进行:

在断点处暂停程序的执行后,在调试器窗口的变量列表中选择该变量。请参见“调试器中的调试”以了解有关变量列表的更多信息。选择以下其中一项操作:运行 > 变量视图 > 观察变量 (或从变量列表快捷菜单中选择观察变量)。Xcode会在变量旁边显示放大镜,表示正在监视该变量(如图7-5所示)。图7-5 变量列表中的已监视变量

当变量的值发生更改时,Xcode会暂停程序的执行,并显示一个对话框,其中包含程序计数器的位置和变量的新值。如果程序执行超出了当前变量的范围,Xcode将删除观察点并暂停程序的执行。

重要提示:监视位于堆栈上的本地变量可能会导致程序崩溃,如果在当前函数中进行系统调用。


谢谢!但是有没有办法观察实例变量?它们在变量监视中不会显示。 - Xrieaz
是的,你必须扩展对象变量(当前对象的self)才能访问其实例变量。 - mbritto

2

我不熟悉Visual Studio,但我猜你正在寻找观察点。在Xcode调试指南中搜索“观察点”。


这个链接已经失效了。也许它已经被这个链接所取代? - Reinhard Männer
谢谢@ReinhardMänner,我更新了链接。下次随时可以建议对答案进行编辑! - w-m
@w-m 好的,我会做的! - Reinhard Männer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接