在断点处暂停时,您会在左下方的调试窗口中看到变量列表。使用Xcode 11 self
不再提供对类变量的访问。在Xcode 10之前,您可以将鼠标悬停在编辑器中的类变量上并查看其值。该功能在Xcode 10中消失了-您必须扩展self
变量。现在您甚至无法做到这一点。
我在这里缺少基本的东西吗?我是否被迫在lldb中使用po
命令?
答案 0 :(得分:2)
当您将鼠标悬停在类型属性上时,您的应用程序是否可以访问它?类型属性是延迟实例化的,因此,如果您尚未访问它,则不会对其进行初始化。正如The Swift Programming Language: Properties所说:
存储的类型属性在第一次访问时被延迟初始化。保证它们只能被初始化一次,即使同时被多个线程访问也不需要初始化。
例如,在Xcode 11.0(11A420a)中,这是在我第一次访问该属性之前的时间:
它尚未初始化,因此看不到与该属性相关的任何值。但是在访问该type属性之后,我将看到属性已初始化:
或者,既然我已经访问过它,现在我也可以将鼠标悬停在代码中的属性上,并查看它是否已初始化:
或者,如果您使用的是该类的方法,那么现在您将看到“调试”面板的“变量”部分中列出的type属性(同样,只有在代码第一次引用它之后,延迟初始化):