0

これが私のコードです:

void autoreleasingReturn (NSError * __autoreleasing *error)
{
    // --- Crashing
    *error = [[NSError alloc] init];

    // --- Not crashing
//    *error = [NSError errorWithDomain:@"hello"
//                                 code:-1
//                             userInfo:@{}];
}

int main(int argc, const char * argv[])
{

    @autoreleasepool {

        NSError __strong *error = nil;

        autoreleasingReturn(&error);

        NSLog(@"error: %@", error); // crash!
    }

    return 0;
}

痕跡 (申し訳ありませんが、コピーして貼り付けることはできません):

ここに画像の説明を入力

質問は次のとおりです。何が起こっているのですか?

このコードで何が起こっているかについての詳細が必要です。本当に興味深い...楽器には漏れやゾンビなどは見られません。

4

1 に答える 1