objective-c - NSObject 子类作为属性

标签 objective-c ios

我想在我的项目中使用我的类作为属性。我的想法是我有一个包含所有列表元素的类。我在下图中显示的基本思想:enter image description here 所以我有一个 myContainerClass 对象,我想在其他一些类中做: @property (strong,nonatomic) MyContainerClass *obj; 在这里我有错误!我发现我只能将 Foundations 类型用作 @property。但为什么?什么是替代品(传递对象)?

最佳答案

不,你可以使用任何你喜欢的类作为属性

@property (nonatomic, strong) MyContainerClass* obj;

是完全合法的,前提是编译器知道 MyContainerClass 是一个类。要在头文件中做到这一点,最好的方法是使用 @class 前向声明:

@class MyContainerClass;

@interface SomeOtherClass : NSObject

// method an property declarations

@property (nonatomic, strong) MyContainerClass* obj;

@end

然后在实现中包含头文件:

#import "MyContainerClass.h"

@implementation SomeOtherClass

@synthesize obj;

// other stuff

@end

关于objective-c - NSObject 子类作为属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10395438/

相关文章:

ios - Objective-c Shinobi 网格更新到 2.8

ios - 为什么我的 UILocalNotification 不播放任何声音?

iphone - MKMapView userLocation 在 iOS5 上错误但在 iOS4.2 上正确

ios - 边界中带有垂直虚线的圆

iphone - 是否可以在 iOS Safari 中检测放大/缩小事件?

ios - tvos UICollectionView 失去焦点到以前的 Focus Cell

ios - NSRegularExpression 崩溃

objective-c - Java 中 'long' 的 Objective C 等价物是什么

ios - 关于插入和删除单元格的 UITableView 动画问题

ios - 在 Facebook Developers App 上添加多个 iOS 包 ID 的通配符?