0
-(NSArray *) convertArrayOfDictionaryToOneOfItsElement: (NSString *) key
{
    NSArray * result = [self convertEachElementToAnother:^(id element){
        NSDictionary *elementDictionary = (NSDictionary *) element;
        NSString * value= elementDictionary [key];
        //NSAssert(result, @"result must not benil");
        return value;
    }];
    return result;
}

このコードはNSAssertがなくても正常に機能します。しかし、物事がゼロの場合、私はそれが起こったときに私が知っていることを確認したいと思います。

さて、NSAssertを入れました

ハングします。

exc_bad_access

なんで?

更新:バグを見つけました。そのはずNSAssert (value, @"result must not benil")

さて、私はまだNSAssert (result,...手がかりの問題を行う理由を知りたいです

4

1 に答える 1

3

ブロック内には結果配列がないため、この配列は最後のブロックの実行後にのみ割り当てられます。

于 2013-01-24T10:36:54.033 に答える