警告按值传递值?

时间:2009-10-31 00:01:42

标签: objective-c cocoa

我是Objective-C的新手,在运行Clang静态分析器时,这部分代码给了我以下错误

warning: Pass-by-value argument in message expression is undefined
[artistCollection removeObject:removeArtist];

任何人都可以为我发出此警告吗?

case 6:
    NSLog(@"(*) - First Name:");
    scanf("%s", userFirName);
    objFirName = [[NSString alloc] initWithUTF8String:userFirName];
    for(eachArtist in artistCollection) {
        if([[eachArtist firName] isEqualToString: objFirName]) {
            removeArtist = eachArtist;
        }
    }
    [artistCollection removeObject:removeArtist];
    [objFirName release], objFirName = nil;
    break;

加里

1 个答案:

答案 0 :(得分:3)

如果您的循环中的if永远不会匹配(因为userFirName不在您的收藏集中),removeArtist将永远不会被分配值。在开始循环之前给它赋值(可能是nil),你应该没问题。