私は多くのチュートリアルに従ってきましたが、私は自己に陥っています。誰でも助けてもらえますか?
インスタンスメソッドである次のinitがあります。
- (id) initWithScore:(int) s {
self = [super init];
if (self) {
score = s;
}
return self;
}
コードを読んで、自己をスーパーinitに設定したため、自己は現在スーパーを指しています。次に、self が有効かどうかを確認し、InitWIthScore で送信した値と等しいスコアを設定します。私はこれまでのところこれを持っています。
しかし、今はスーパーを指す自己を返すので、サブクラスを返すにはどうすればよいですか?
したがって、誰かが私のクラスを呼び出して 100 を渡したとしましょう。私のコードはクラスではなくスーパーを返しているので、どのように機能しますか? 呼び出しコードのスコアが 100 になるのはなぜですか?
もちろん、はい、動作しますが、理由はわかりません:-(