2

NSURL を返すはずの関数がありましたが、誤って NSString を返してしまいました。Xcode は警告を発行しませんでした。これがなぜなのか、またはこれに対する警告を有効にする方法について考えてください。(後でアプリのクラッシュにつながります)。ちなみに、NSMutableDictionary を返すように関数を変更すると、互換性のない戻り値の型に関するコンパイラの警告が表示されます。Xcode 4.5.1 を使用しています。

-(NSURL *) urlForThing:(Thing *)thing
{
    //This is clearly a string at compile time and I would expect a warning
    //If I change this to [NSMutableDictionary alloc] I do get a warning
    return [NSString stringWithFormat:@"thing://url/%@", thing];
}
4

1 に答える 1

2

ええと、短い答えは、ではなくをstringWithFormat:返すことだと思います。これは私にはあまり意味がありませんが、警告がないことを説明しています。idNSString

于 2012-10-26T06:23:07.727 に答える