0

メソッド viewDidLoad: でオブジェクトを作成しました。私が作成する別のメソッドで、このオブジェクトにアクセスしたいと考えています。

これを行う 1 つの方法は、h ファイルでオブジェクトを宣言することです。

それを行う別の方法は、パラメーターとして渡すことです。

他の方法はありますか?

4

2 に答える 2

20

これを行うには多くの方法があります。これは完全なリストではありません。

  • パラメータとして渡す

  • グローバルを宣言する

  • NSThreadに貼り付けます+threadDictionary

  • オブジェクトを返すクラス メソッドを宣言する

  • オブジェクトへの参照をインスタンス変数に貼り付ける

  • オブジェクトを格納して返す静的ローカルを持つ関数またはメソッドを宣言する

  • 関連付けられた参照を使用して、両方のメソッドが到達できるランダムなオブジェクトにアタッチします

  • メモリの塊を既知のアドレスにマップし、参照をページの最初のワードに書き込みます

  • NSUserDefaults へのポインターをアーカイブし、それを読み戻します

  • ファイルシステム内のファイルへのポインターまたはオブジェクトをアーカイブし、それを読み戻します

  • 住所を画像に描画し、光学式文字認識を使用して取得します

詳細がなければ、どれが最良のアプローチであるかを判断するのは困難です (最後の 4 つが適切な解決策であった場合、私は非常に驚くでしょう)。


いくつかの追加:

  • 音声合成を使用してアドレスを読み上げ、音声認識を使用して読み上げます (@chockenberry は、「弱い参照を取得するためにささやくことができます」と言っています)。

  • @boredzo は、Apple ][/C64 カセット インターフェイスをシミュレートすることを提案しました。

  • オーディオの分野では、認識しやすいモールス符号を使用するのが最も実用的です。

  • おそらくプッシュ通知を使用できますが、ユーザーがボタンを押して参照を返すことを期待する必要があります(iOSを想定)

于 2010-10-03T02:27:56.320 に答える
2

選択肢が多いのも事実です。詳細を知らなくても、あなたの質問に対する最も可能性の高い答えは、シングルトンを使用することだと思います。これがあなたの質問に対する最も可能性の高い答えであるため、「Singleton design pattern」を調べてください。

于 2010-10-03T05:18:32.283 に答える