0

我在方法 viewDidLoad: 中创建了一个对象。在我创建的另一种方法中,我想访问这个对象。

一种方法是在 h 文件中声明对象。

另一种方法是将其作为参数传递。

还有其他方法吗?

4

2 回答 2

20

有很多方法可以做到这一点。这不是一个详尽的清单。

  • 将其作为参数传递

  • 声明一个全局

  • 把它放在 NSThread 的+threadDictionary

  • 声明一个返回对象的类方法

  • 在实例变量中粘贴对对象的引用

  • 声明一个具有静态局部变量的函数或方法,该局部变量存储对象并返回它

  • 使用关联引用将其附加到某个随机对象,这两种方法都可以到达

  • 在已知地址映射一块内存并将引用写入页面的第一个字

  • 归档指向 NSUserDefaults 的指针并读回

  • 将指针或对象归档到文件系统中的文件并将其读回

  • 将地址绘制成图像并使用光学字符识别将其取回

没有更多细节,很难说哪个是最好的方法(除了说如果最后 4 个是正确的解决方案,我会非常惊讶)。


一些额外的:

  • 使用音频合成说出地址,使用语音识别读取地址(@chockenberry 说“你可以耳语以获得弱参考。”)

  • @boredzo 建议你模拟一个 Apple ][/C64 盒式接口

  • 在音频方面,最实用的可能是使用莫尔斯电码,因为它很容易识别

  • 您可能可以使用推送通知,但是您必须依靠用户按下按钮来给您返回参考(假设 iOS)

于 2010-10-03T02:27:56.320 回答
2

确实有很多选择。在不了解更多信息的情况下,我只会猜测您的问题最有可能的答案是使用单例。查找“单例设计模式”,因为这是您问题的最有可能的答案。

于 2010-10-03T05:18:32.283 回答