bed*_*ger 18 protocols objective-c
除非我遗漏了某些内容,否则我将协议定义放在哪个.h文件中似乎是随意的.我甚至想知道它是否可以在它自己的.h文件中...(在Java中,它在它自己的文件中)
Ben*_*tow 20
我认为协议的位置取决于你如何使用它.很多时候,协议用于定义另一个类的委托或数据源的功能.如果是这种情况,我认为您可以安全地将协议定义放在另一个类的顶部 - 因为它们必然会一起使用.
如果您要定义协议来代替共享基类,则应该将其放在单独的文件中.例如,我有几个不同的类来实现"操作"协议.我的一些其他函数期望接收实现协议的对象,并且不太关心实际的类.在这种情况下,将协议定义放在它自己的头文件中是有意义的,这样你就可以将它包含在它自己的头文件中.
但是Benny是对的 - 无论你把它放在哪里,它都会在技术上被定义(只要它被包含在它使用之前的某个地方).
我认为只要它在某处定义并包含在您正在编译的文件之一中,它就被定义了。Objective-C 中没有像 Java 中那样的“ClassName.java”约定。
当您想要对私有方法/属性等内容进行分类之类的操作时,这非常有用。
| 归档时间: |
|
| 查看次数: |
9872 次 |
| 最近记录: |