如何在Objective-C中添加一个variables到类别?

需要用一个新的variables(NSArraytypes)创build一个类别。

OriginalClass + Extension.h:

@interface OriginalClass (Extension) { NSArray *_array; } @property (nonatomic, retain) NSArray *array; @end 

但是我得到了错误: Cannot declare variable inside @interface or @protocol

请帮忙解决这个问题。

另一方面,你不能。 虽然有H2CO3指出,你可以使用联想参考 。 在苹果文件上 :

请注意,类别不能为类声明额外的实例variables; 它只包括方法。 但是,该类范围内的所有实例variables也都在该类别的范围内。 这包括由类声明的所有实例variables,甚至声明了@private。

如果你想去关联的对象,你可以使用这个答案。 而且,你可以使用Ole Begemann的这篇文章。

你不能,一个类别不能声明额外的实例variables…

参考: 这里 。

简单:您不能使用类别将实例variables添加到类中。

如果您需要存储其他数据:使用关联的对象。