前提・実現したいこと
クラス内にてインスタンス変数に値を代入をしようとすると、
エラーが発生します。
数時間ウェブサイトで原因を調べてみましたが、
何故エラーが発生するのかわかりませんでした。
インスタンス変数は、修飾子を何も付けない場合、インスタンスメソッド内でしか使えないものと理解すれば良いでしょうか
レベルの大変低い質問で申し訳ございませんが、ご教示頂けますと幸いでございます。
発生している問題・エラーメッセージ
Initializer element is not a compile-time constant
該当のソースコード
Objective
1#import "SampleClass.h" 2 3@implementation SampleClass{ 4 //インスタンス変数(グローバル変数) 5 NSString *test1; 6} 7 //クラス変数? 8 NSString *test2 =@"野良ネコ"; 9 10 //インスタンス変数に代入 11 //↓エラーが発生 12 test1 = @"親ネコ"; 13 14-(void)sampleMethod{ 15 //ローカル変数 16 //エラーなし 17 NSString *test3 =@"家ネコ"; 18 19 //インスタンス変数に代入 20 //エラーなし 21 test1 = @"子ネコ"; 22 NSLog(@"%@",test3); 23 24 //クラス変数?に代入 25 //エラーなし 26 test2 = @"キジネコ"; 27} 28 29@end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/04/02 07:42