0
编译器向我显示警告,因为'photo'的本地声明隐藏了实例变量。 我不明白发生了什么事。'photo'的本地声明隐藏实例变量
// PTKData.h
@interface PTKData : NSObject {
UIImage *photo;
}
@property (nonatomic, retain) UIImage *photo;
- (void) doSomething: (UIImage *)photo;
@end
// PTKData.m
@synthesize photo = _photo;
- (void) doSomething: (UIImage *)photo {
_photo = photo;
}
在我的理解,@synthesize照片= _photo现有的方法相同的局部变量的名字命名时,照片到_photo。 我找不到在我的代码中导致警告的问题。
预先感谢您。
因为你声明了UIImage * photo;在你的.h类中改变它并声明任何其他名字 –
正如@Sudha指出的,你有两个伊娃的:'photo'(在顶部声明)和'_photo',当你合成'photo'时会自动创建。 – lnafziger
谢谢。它解决了。 – MonsterK