2010-08-16 97 views
0

我複製一個可變數組是這樣的:複製NSMutableArray的項目

//copy players' info into playerList from a dictionary 
playerList = [[NSMutableArray alloc] initWithArray:[params objectForKey:@"p"] copyItems:YES]; 

數組中的項目實施copyWithZone這樣的:

- (id)copyWithZone:(NSZone *)zone 
{ 
    PlayerInfo* copy = [[[self class] allocWithZone:zone] init]; 
    [copy setNick:[self nick]]; 
    ... 
    [copy setIsChallengedByMe:[self isChallengedByMe]]; 

    return copy; 
} 

然而,playerList只好像有哪些是對象「超出範圍」。我究竟做錯了什麼?

+0

順便說一下,您可能想使用更簡單的playerList = [params objectForKey:@「p」] mutableCopy]。 – mrueg 2010-08-16 09:15:58

+0

對象「超出範圍」是什麼意思?變量有範圍,而不是對象。 – Chuck 2010-08-16 09:19:54

+0

我的意思是playerList是一個「超出範圍」變量的數組 – Daniel 2010-08-16 09:23:08

回答

1

我假設你的意思是他們在調試器中出現「超出範圍」。不要擔心,這很常見,並不一定意味着什麼是錯的。如果您將數組的描述打印到控制檯,它應該打印一切正常。