そのため、ユーザーの入力に応じて、大量のデータまたはごくわずかなデータを含む可能性のあるカスタムオブジェクトが多数あります。少しだけ必要な場合は、明らかに大量のデータ用のストレージを作成したくありません。だから私は初期化について聞いた、そしてそれはまさに私が望むもののように聞こえる。私はそれを機能させることができません。これが私の試みの1つの例です:
@synthesize name;
...
- (NSString *)name {
if (!name) name = [[NSString alloc] init];
return name;
}
そしてどこか他の場所
myObject.name = localName;
初期化子にIalloc
とinit
myObjectの名前がある場合、これは正常に機能します。ただし、上記の遅延初期化を試みると、オブジェクトの名前はnil
設定しようとした後になります。私は何が間違っているのですか?