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