13

clang のドキュメントによると、返されるメソッドは、 or で始まるクラス メソッド、または、、、、またはで始まるインスタンス メソッドである場合に返されることがid暗黙的にわかっています。instancetypenewallocretainautoreleaseinitself

一貫性を保つために、これらのメソッドもinstancetype新しいコードで明示的に返すように記述する必要がありますか?

- (instancetype)init {
    self = [super init];
    if (self) {
        // perform initialization
    }
    return self;
}

理由、理由、または理由に関するドキュメントはありますか? この場合、コンパイラとまったく同じように解釈されるようです。

4

1 に答える 1