我最近继承了一些 IOS 应用程序代码,其中包含一个单例静态目标 C 类,其中包含应用程序中各个类之间共享的数据。这是非常漂亮的设计模式,我已经利用它来添加代码。单例的结构和这篇文章很相似
只有一件事让我感到害怕。使用这个单例的 Objective C 对象都没有导入它的头文件;但他们都可以访问它的实现声明接口。对我来说,这看起来有点像“来自远处的幽灵般的互动”。输入单例的名称,xcode 会很有帮助地为您的代码语句建议补全。编译编译器时,微笑着,从不抱怨缺少声明。
是的,我已经检查了导入标头的导入,但它们都没有。我做了一个简单的测试类,它只包含它自己的标题,但在方法中我可以放置单例的名称并访问其中的任何内容。
所以我的问题是谁或什么在做这个自动导入?代码?目标C?小绿外星人?