0

重複の可能性:
NSString を別のビュー コントローラーに送信する方法

データを格納するクラス (classA) を作成しました。classB はそれにデータを送信します。classB が classA にオブジェクトを送信すると、そのオブジェクトは classB で削除されます。私のプログラムの問題は、オブジェクトがclassBから削除されると、オブジェクトの実際の「コピー」が1つしかないと思うため、classAから削除されることだと思います。私はそれを正しく理解しましたか?どうすればこの問題を解決できますか? classB でオブジェクトを複製することしか考えられませんが、より良い方法はありますか?

ありがとう

4

2 に答える 2

0

最良の方法は、オブジェクトを classB から classA の保持オブジェクトに取得することです (保持されている classA のプロパティを使用できます)。そうすれば、classA から classB に渡されるオブジェクトのスコープが失われることはありません。

于 2012-06-22T10:52:49.950 に答える
0

Objective-C では、保持カウントが 0 に等しい場合にオブジェクトが削除されます。したがって、classB がこの渡されたオブジェクトを存在させたい場合は、それを保持し、不要になったら解放します。プロパティの場合は、プロパティを保持 (または強力、arc を使用している場合) として宣言します。

于 2012-06-22T08:58:38.913 に答える