1

この質問が何十億回も聞かれていることは知っていますが、私の特定の質問には答えがありません。重複して申し訳ありません。

だから私は extern 変数を宣言して定義する方法を知っています (私が間違っている場合は修正してください):

foo.h ファイル内:

extern NSString *foo;

foo.m ファイル内:

NSString *foo = @"fooey";

しかし、hoo.m ファイルの変数にアクセス/変更したいとします。どうすればいいですか?

4

1 に答える 1

1

.h で

 @interface SOViewController : UIViewController{
    NSString * variable;
 }

.m では、どこにでも設定できます。

たとえば、viewDidLoad です。

宣言を入れることで、.m ファイルでこれを宣言することもできます。

@interface SOViewController(){
    NSString * variable;
}
  // @property (strong, nonatomic) NSString * myString; might be appropriate here instead
@end

@実装前。

理想的には、これはオブジェクト指向プログラミングであるため、ベスト プラクティスは文字列をクラスのプロパティにすることです。

extern キーワードを本当に設定している場合は、これを使用する方法に関するスタックオーバーフローの投稿をご覧ください。Objective C - extern 変数の使用方法?

編集

問題は、変数をどのように渡すかということになりました。この記事How to pass prepareForSegue: an objectを見て、セグイングでそれを行う方法の例を確認できます。

于 2013-08-31T03:37:29.273 に答える