免責事項、私は目的Cを初めて使いましたが、これは説明できません。それでは、私が持っているとしましょう目的C init
- (id)init {
if ([super init]) {
return self;
} else {
return nill;
}
}
と
- (id)init {
if (self = [super init]) {
// do your init business here
}
return self;
}
:
myObj = [[MyObject alloc] init];
MyObjectにクラスはNSObjectののサブクラスである場合、私は、initを実装する二つの方法を見てきました。 2番目の例では、initはNSObjectの初期化されたバージョンを返しませんか?だから、myObjは...それが何であるかをどのように知るだろうか?それはMyObjectではなくNSObjectだとは思いませんか?
右、分かります。私はそれが何をしているのか知っていることを意味私はちょうどボンネットの下で、どのようにそれを知ってほしい。 NSObjectクラスのオブジェクトにはMyObjectクラスのオブジェクトとなるプロパティやメソッドがありません。 NSObjectのinitがNSObjectを返すことが期待されます。構文的に、それは私を混乱させる。 – scriptThis
-initは、NSObject *ではなくidを返します。 – NSResponder
@scriptThis:そうです。しかし、 'alloc'オブジェクトを生成するのは' init'ではありません。 – hoha