0
我有以下类:获取实例变量?
@interface Gamer : CCNode {
NSMutableArray * cards;
}
@property (nonatomic, retain) NSMutableArray * cards;
+(id) CreatePlayer;
-(BOOL)SetCardsArr:(NSMutableArray *) cs;
-(BOOL)GetCardForMove:(Card*) card actionCard:(Card*)selCard;
@end
@implementation Gamer
@synthesize cards;
+(id) CreatePlayer
{
return [[self alloc] init];
}
-(BOOL) SetCardsArr:(NSMutableArray *) cs
{
if (!cs) return NO;
cards = [cs copy];
return YES;
}
-(BOOL)GetCardForMove:(Card*) card actionCard:(Card*)selCard;
{
for (Card * curCard in cards)
{
if ([curCard GetCardSuit] == [selCard GetCardSuit])
{
selCard = curCard;
break;
}
}
return YES;
}
-(id) init
{
if(![super init]) return nil;
return self;
}
- (void)dealloc
{
[cards release];
[super dealloc];
}
@end
在我的主游戏类我设置玩家阵列与SetCardsArr方法的帮助。 并且一些动作后,我试图通过GetCardForMove方法这样获得玩家卡:
Card * moveCard = nil;
Card * selCard = card;
[mGamer GetCardForMove:moveCard actionCard:selCard];
的GetCardForMove功能工作正常,发现卡并指定正常,但卡* moveCard为零:( 我是新来的。 Objective-C和有点困惑,请给我指出我的错误
不 - 推荐通过引用(out参数)完全是错误的事情。不要这样做! “类似的代码”是错的!使用Graham建议的第一种方法。 – bbum 2010-07-01 22:32:44