在原始类中找不到的类别中定义的属性

时间:2014-10-22 23:46:08

标签: objective-c compiler-warnings objective-c-category declared-property

我有一个非常大的课程,我正在尝试创建一个类别。在原来的班级' .m文件,我有2个对象(在类别.h文件中定义),我得到了"未识别的标识符"构建错误。

这是UploadViewController + CreateExportFiles.h类中其中一个的对象定义:

@property (strong, nonatomic) NSArray *booksArray;

原始类(UploadViewController.h)的.h文件如下所示:

#import "UploadViewController.h"
#import "UploadViewController+CreateExportFiles.h"

以及我在收到错误的班级中booksArray的用法是:

if( [[[booksArray objectAtIndex:i] tranCode] isEqualToString:@"A"]) 

我还需要做些什么才能解决错误吗?

1 个答案:

答案 0 :(得分:1)

类别无法向类添加存储空间。通过将属性声明从主类接口移动到一个类别,您已经阻止编译器为您创建ivar booksArray,这是您用{{1}引用的实体}}

您需要将属性放回主类接口或类扩展,或use a workaround