当前位置: 首页 > 面试题库 >

LLDB(快速):将原始地址转换为可用类型

严嘉良
2023-03-14
问题内容

是否有LLDB命令可以将原始地址转换为可用的Swift类?

例如:

(lldb) po 0x7df67c50 as MKPinAnnotationView

我知道此地址指向MKPinAnnotationView,但它不在我可以选择的框架中。但是,我想将原始地址转换为MKPinAnnotationView,以便可以检查其属性。这可能吗?


问题答案:

在Xcode 8.2.1和Swift 3下,lldb命令 po p 不适用于类型变量。您将需要使用swift命令 print检查输入的对象实例的属性。例如:

expr -l Swift -- import UIKit
expr -l Swift -- let $pin = unsafeBitCast(0x7df67c50, to: MKPinAnnotationView.self)
expr -l Swift -- print($pin.alpha)


 类似资料:
  • 问题内容: 如何使用Swift 将地址转换为坐标?我还没有代码,我正在寻找解决方案,但尚未找到任何人。 谢谢。 问题答案: 这很容易。 您还需要添加和导入CoreLocation框架。

  • 问题内容: 我有此表达式返回一个: 我希望能够在此if语句中使用数字: 问题是控制台给了我这个 问题是无法与进行比较。我想投到一个。我努力了: 这些都导致 如何转换值或在if语句中使用它? 问题答案: 做两件事,一是消除当前方法的负面结果,二是应根据结果正确创建一个Int。

  • 问题内容: 我有使用地址的应用程序(它存储它们的时间很长),因此它只了解地址。 可以将地址转换为with 吗? 问题答案: 尽管IPv4地址范围具有等效的IPv6,但是您不能将所有IPv6地址都转换为IPv4-IPv6地址比IPv4地址更多。 解决此问题的唯一明智的方法是更新您的应用程序,以便能够理解和存储IPv6地址。

  • 问题内容: 我将类的实例存储在中。 如何将Object 转换回类以访问class方法? 问题答案: 打字: 另外,如果是 class方法 ,则不需要 实例 来访问它,则可以直接调用它:

  • 我有一个文件包。crd。伊滕是这样的 我需要将其导入到以下格式的excel文件中。 我试过这个代码,但不起作用 请帮忙

  • 问题内容: 无论如何,是否可以使用新的Swift语言从Objective-C 模拟? 例如: 问题答案: 现在,它已成为标准库的一部分:。 迅捷3 对于Swift 3,请使用: