全部-
在 Obj-C 中定义朋友属性的正确方法是什么(具体实现是 Xcode for IOS)。我所说的友元属性是指对基类、该基类的任何子类可用但对公众不可用的实例属性。
例子:
@interface Base : NSObject
@property int friend
@end
@interface Sub : Base
@end
@implementation Base
@synthesize friend;
@end
@implementation Sub
-(id)newFriend
{
[self setFriend: [someOtherObject friend]]; // this should be allowed
}
@implementation Wow
-(void)
{
Sub* sub = [[Sub alloc] init];
[sub setFriend: [someOtherObject friend]]; // this should not be allowed
}
我尝试将 Base 的 @property 朋友放在 .m 文件中,但随后 Sub 看不到它。
在 c++ 中,我有一个名为friend 的辅助声明器,它完全符合我的要求。如何在 Obj-C 中做到这一点?
谢谢