0

私はこの 4 時間、あらゆる種類の小さな実験を試みながら、これについて頭を悩ませてきましたが、何が問題なのか理解できていないようです。これはコンパイラのバグでしょうか?

Test.m:

- (id)initWithContentsOfURL:(NSURL *)aURL error:(NSError **)error
{
    if (!(self = [super init])) {
        return nil;
    }
    return self;
}

main.m:

NSError *error;

Test *t = [[Test alloc] initWithContentsOfURL:[NSURL fileURLWithPath:@"/"] error:&error];

コンパイラの警告は次のとおりです (main.m から):

警告: 互換性のない Objective-C 型 'struct NSError **'、予期される 'initWithContentsOfURL:error:' の引数 2 を個別の Objective-C 型から渡すときに 'struct NSDictionary **'

Xcode と Snow Leopard の最新バージョンを使用しています。

4

1 に答える 1

5

セレクターの別のインスタンス、initWithContentsOfURL:error:おそらくNSAppleScript. [NSObject alloc]を返すことを忘れないでくださいid

コードは実行時に期待どおりに機能しますか?

[Test alloc]toの return をキャストしてみてくださいTest*

すなわち


Test *t = [(Test*)[Test alloc] initWithContentsOfURL:[NSURL fileURLWithPath:@"/"] error:&error];
于 2010-04-07T11:07:42.410 に答える