XCode 4.5以降、3つの変数宣言ステートメントを1つにまとめることができます。
- iVar
- プロパティ
- 合成
今:1。合成
したがって、古いコードが次の場合:
NSString* name; //in .h file
@property (nonatomic, strong) NSString* name; // in .h file
@synthesize name; // in .m file
4.5以降、必要なのはこれだけです。
@property (nonatomic, strong) NSString* name; // in .h file
これで、次のいずれかを使用してこのiVarに対処できます。
self.name = @"john"; // used to reference the full property setter/getting - usually from outside the object
_name = @"john"; // used to reference an internal variable
このエラーメッセージは、iVarを使用したときに発生しました(先頭にアンダースコアがないことに注意してください)。
name = @"john";
変更を修正するには:
self.name = @"john"; // or
_name = @"john";
注:xcodeバージョン4.5(4G182)ではこのエラーは発生しませんでしたが、4.5.2(4G2008a)では発生しました。