0
でクラッシュが発生します。読むのURLこのコードは、SIGABRTでクラッシュSIGABRT
NSOpenPanel *openPanel = [NSOpenPanel openPanel];
[openPanel runModalForTypes:nil];
NSArray* URLs = [openPanel URLs];
for (NSString* item in URLs)
{
NSLog(item); // here it crashes with SIGABRT
}
私は、コードに何か問題が表示されていないが、私はObjective-Cのでは初心者です。
はい、これは問題のようです。私はおそらく 'NSLog(@"%@ "、[url path]);'を使用します。 –
@enchilada答えをありがとう、私のコードは今素晴らしいです!しかし、C++から来て、私はこの場合コンパイルエラーが予想されますが、目的型-cではポインタ型のチェックはありませんか? – sashoalm
もちろん、ポインタ型のチェックがあります。 NSLogは実際に文字列を期待していて、警告を受け取っていないので、以前は "NSString * item"と書いていたので、もともとはコンパイル時の警告を受け取っていませんでした。あなたは "NSURL * url"という警告を得ているはずです。しかし、私はどちらの場合でも、オブジェクトをNSLogに直接渡すときに何らかの警告を発するべきだったと思います。私はそのような警告を見たことを思い出しているようです。たぶんそれはコンパイラの設定に依存します。 – Enchilada