Objective c 有趣的循环?基类如何包含子类作为成员?
基类如何包含子类作为成员?例如:Objective c 有趣的循环?基类如何包含子类作为成员?,objective-c,logic,member,superclass,Objective C,Logic,Member,Superclass,基类如何包含子类作为成员?例如: @interface Magic : NSObject { @private NSString* name; int power; int manaCost; SpecialKindOfMagic* thisMuch; } @end @interface SpecialKindOfMagic : Magic { @private int thisMuchSpecial; } @end 在声
@interface Magic : NSObject {
@private
NSString* name;
int power;
int manaCost;
SpecialKindOfMagic* thisMuch;
}
@end
@interface SpecialKindOfMagic : Magic {
@private
int thisMuchSpecial;
}
@end
在声明Magic类之前使用前向声明:
@class SpecialKindOfMagic;
@interface Magic ...
另外,声明一个不是从NSObject派生的类是非常不寻常的,所以您可能想写:
@interface Magic : NSObject {
你为什么要这么做?基类不应该知道派生它的任何东西。