Objective Cのどのクラスでも変更可能なグローバル変数(基本的にはフラグvar)を作成したいと思いますか?すべての例が評価されます。どのクラスでもアクセス可能なグローバル変数
答えて
シングルトンパターン。
http://www.galloway.me.uk/tutorials/singleton-classes/
常に新しいオブジェクトを作成するか、またはあなたの既存のものを与えるだろう「sharedManager」メッセージを通じて、オブジェクトを参照。
Stevenに感謝します。これは参考になります。 – user1140780
Objective-Cには、古い「C」がカバーの下で実行されていることを忘れないでください。したがって、Objective-CではC言語のようにグローバル変数を作成できます。
これを確認してください。あなたのappname.pchファイルでいくつかのクラスをインポートすると、アプリケーションシングルトンから簡単にアクセスできるので、アプリケーションデリゲートと言うことができます。
#define MY_APP_DELEGATE (((MYAppDelegate *)[UIApplication sharedApplication].delegate))
ようにそこスクリップを追加し、任意のクラスから、このようにデリゲート変数を使用します。
int val1 = MY_APP_DELEGATE.myvar;
MY_APP_DELEGATE.myvar = 1;
のObjective CはANSI Cの厳密なスーパーセットなので、作成して使用するために使用されるステッププレーンCグローバル変数を目的Cで使用することができます。
クラスインターフェイス、メソッド、またはサブルーチンスコープの外にある.mファイルで、グローバル変数を宣言またはインスタンス化します。ゴミ値で始める):
BOOL myGlobalFlag = NO;
、(グローバル変数の使用はバグの特定の種類に関与しているのリスクが高いと考えられているので、あなたは、それらを見つける必要があるかもしれません)を見つけるためにこれらのグローバルが簡単にトップでそれらを置くために必要なインクルードの直後にファイルのまたは、App Delegate、main()を含むファイル、またはプロジェクトに含まれるmy_apps_globals.cなどのすべてのグローバルのみを含むファイルなど、すべてのグローバルファイルを簡単に見つけることができます。
あなたは、この変数にアクセスしたい任意のクラス、.M、または.Cファイルに属する少なくとも一つの.hファイルで、および任意のクラスインタフェースや構造体定義の外、など外部からアクセス可能なこの変数を宣言します。
extern BOOL myGlobalFlag;
次に、上記のいずれかのヘッダーファイルを含む任意のメソッドまたはサブルーチン内で、変数を使用します。
-(void)dummyMethod {
if (myGlobalFlag) NSLOG(@"the Flag is set!!!");
}
- 1. どのクラスでもアクセス可能なデータを格納する変数
- 2. codeigniterグローバル変数の値がアクセス可能でない
- 3. どこからでもアクセス可能な変数
- 4. パッケージ内のどのクラスでもアクセスできるJavaのグローバル変数
- 5. 変更可能なグローバル変数C++
- 6. 可能なグローバル変数の問題?
- 7. 他のクラスでアクセス可能なObjective-C変数
- 8. クラス外のグローバル変数へのアクセス
- 9. グローバルにアクセス可能なモーダルコンポーネントの反応
- 10. 変更可能な変数はクロージャからアクセス可能です
- 11. 異なるクラスからアクセス可能なグローバル変数のリストを作成する方法は?
- 12. 複数のクラスでの可変アクセス
- 13. 可変変数ファイルがグローバルでない
- 14. グローバル変数なしで可能なCollatzシーケンス?
- 15. グローバル変数にアクセスできない
- 16. Python:クラス内の他のクラス変数からクラス変数へのアクセス - 可能ですか?
- 17. グローバル変数Pythonクラス
- 18. 実行可能ファイルのグローバル変数へのアクセス時の共有ライブラリリンカエラー
- 19. 角4のすべてのコンポーネントでアクセス可能なグローバル変数と関数の作成方法
- 20. ヘルパー関数によってアクセス可能なrspecテストで単純なグローバル変数を定義する方法
- 21. グローバル変数へのアクセス
- 22. Javascriptグローバル変数へのアクセス
- 23. グローバル変数へのアクセス?
- 24. angular4 - ビューでもアクセスできるグローバル変数を作成
- 25. ASP.NETグローバル変数を格納する - すべてのページからアクセス可能
- 26. Firefoxの拡張機能でグローバル変数にアクセスする
- 27. 設定可能なグローバル変数を提供する
- 28. iOSアクセス可能なメソッドを含むクラス
- 29. グローバル変数にアクセスする
- 30. スクリプトタスク:2つのクラスを作成してグローバル変数にアクセス
あなたはこれについてグーグルについて考えることさえしませんでしたか? – PengOne
アプリケーションデリゲートにプロパティを追加します。 – Jeremy
[Objective-Cのグローバル変数](http://stackoverflow.com/questions/1113980/global-variables-in-objective-c)とhttp://stackoverflow.com/questions/5098990/の可能な重複in-objective-c-how-do-you-declare-use-a-global-variable、http://stackoverflow.com/questions/7081245/global-variables-in-xcode、およびhttp://stackoverflow.comを参照してください。/questions/3601341/iphone-global-variable –