1
8
标准做法是使用 opaque pointers 到库类型或自定义 实施 结构 平普尔 - 指向实现的指针 ) 要做到这一点,您必须知道可以定义指向不完整类型的指针,即只声明存在的类型。例如。:
然后可以在实现文件中定义类型:
并分配/初始化它,例如
|
2
3
GF的回答是不切实际的,但也有另一种方式。使用不透明类。 福:
福:
如果你不喜欢自己,你可以这样做:
上面的模式(全部)有几个优点。首先,它与GC完全兼容,因为所有内容都声明为对象引用。其次,如果需要的话,将私有的东西重构成一个单独的类要容易得多。最后,有了这个类来保存私有空间,就可以更容易地将与私有内容相关的任何逻辑或持久性与其他所有内容分离出来;这将使未来的重构更加容易。 是否是更好的解决方案来满足您的需求取决于您的具体需求。 |
3
0
我了解到,自从llvm 3.0以来,您可以将接口的花括号部分(声明ivars的部分)移动到实现(.m文件,位于@implementation块内) 来源: http://www.raywenderlich.com/5773/beginning-arc-in-ios-5-tutorial-part-2 (链接是一个弧教程,但此新功能独立于弧)。 就我个人而言,我既惊讶又高兴。 编辑:原来是从xcode 4.2开始的: |
Martin sku · 在目标C中打印时间 2 年前 |
Vinod prajapat · 如何更新数组的最后一个元素? 2 年前 |
subin272 · 修复iOS中的多个按钮单击事件? 6 年前 |
James Chan · 如何使用锁定/解锁? 6 年前 |
Josh F. · NSBundle mainBundle返回零 6 年前 |