objective-c代码这样写有什么特含义吗?-(void)setLoadavatar:(BOOL)loadAvatar { if(!loadAvatar_ = loadAvatar) {}}

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/02 10:08:23
objective-c代码这样写有什么特含义吗?-(void)setLoadavatar:(BOOL)loadAvatar { if(!loadAvatar_ = loadAvatar) {}}
xRMO@+ U+F7#O̪` %\I?6QD(@4&ڂ?[N ԛI7潗*P|n)2"}voS`mp#T<_$'dH I26F݆&D}b1+ _2oe?jqP{+DHPBe?Cŏ5Ѣ m=5A eDEAmSƒnO$C:LSi*0_  /kTUPV8:A+g79sJFvg.qj4$'lc:31-y|3z5

objective-c代码这样写有什么特含义吗?-(void)setLoadavatar:(BOOL)loadAvatar { if(!loadAvatar_ = loadAvatar) {}}
objective-c代码这样写有什么特含义吗?
-(void)setLoadavatar:(BOOL)loadAvatar {
if(!loadAvatar_ = loadAvatar) {

}

objective-c代码这样写有什么特含义吗?-(void)setLoadavatar:(BOOL)loadAvatar { if(!loadAvatar_ = loadAvatar) {}}
两个非运算符往往是为了把非0值转换成1,因为!0 = 1
比如 int a=10
!a = 0;
!a = 1;
所以!a并不等于a
因此你这个loadAvatar_变量应该不是BOOL类型
不过在OC中,0是NO,其它都是YES,所以写成loadAvatar_!= loadAvatar也并不危险
一个int型和BOOL型判断是否相等,用这个方法是比较严谨的