【发布时间】:2011-06-20 11:28:40
【问题描述】:
我更新到新的 Xcode 4.2(适用于 iOS 5),但现在我的项目不再构建,出现错误:“'Category' redeclared as different symbol”。然后有许多与“请求成员“名称”不是结构或联合相关的错误,以及“无效的接收器类型“类别””等警告。
我想这与我如何进行声明有关。关于这个(核心数据)类,我有以下声明:
#import <CoreData/CoreData.h>
@class Article;
@interface Category : NSManagedObject
{
}
@property (nonatomic, retain) NSNumber * id;
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSString * desc;
@property (nonatomic, retain) NSDate * lastUpdate;
@property (nonatomic, retain) NSSet* articles;
@end
@interface Category (CoreDataGeneratedAccessors)
- (void)addArticlesObject:(Article *)value;
- (void)removeArticlesObject:(Article *)value;
- (void)addArticles:(NSSet *)value;
- (void)removeArticles:(NSSet *)value;
@end
--
#import "Category.h"
@implementation Category
@dynamic id;
@dynamic name;
@dynamic desc;
@dynamic lastUpdate;
@dynamic articles;
@end
--
在另一个具有 n:n 关系的 Core Data 类中,我使用“@class Category;”声明。 在我使用这个类的类中,我导入了头文件:#import "Category.h"。
执行此操作的最佳方法是什么,或者需要更多信息才能找到问题。我尝试了各种不同的组合,但现在很困惑何时以及如何声明。 (我上次构建时代码运行良好)
【问题讨论】:
标签: objective-c cocoa-touch cocoa build compiler-errors