Objective-C中的名称Category
是否受限制?
如果我在新项目上创建了一个对象Category
的子类NSObject
,我会收到错误并说Redefinition of 'Category' as different kind of symbol
。
例如:
Category.h
#import <Foundation/Foundation.h>
@interface Category : NSObject
@end
Category.m
#import "Category.h"
@implementation Category
@end
答案 0 :(得分:0)
是的,已经创建了一个名为Category
的对象/// An opaque type that represents a category.
typedef struct objc_category *Category;
您必须重新定义对象的名称。
答案 1 :(得分:0)
是的,它已经在ObjC运行时中定义。
///表示类别的opaque类型
typedef struct objc_category *Category;
您可以通过⌘ - 点击符号来检查。