美文网首页
1.8、规则:禁止对属性做出错误的内部成员变量声明

1.8、规则:禁止对属性做出错误的内部成员变量声明

作者: 半升多瑙河 | 来源:发表于2016-07-19 14:12 被阅读20次

说明: xcode4.4开始会自动@synthesize ,为@ property声明一个前缀下划线

的内部成员变量。因 此,不需要为属性重复做出内部成员变量声明。同时,禁

止 对属性做出错误的内部成员变量声明 。 示例-1:

良好的风格:@interface MyClass : NSObject {

}@property(copy, nonatomic) NSString *name; @end错误的声明:@interface

MyClass : NSObject {

NSString *name;

}@property(copy, nonatomic) NSString *name; @end------------范例-2:@interface t1 : NSObject

{NSString *a;

}@property (nonatomic,retain) NSString *a; -(BOOL)isStringEmpty;

@end

warning:Autosynthesized property 'a' will use synthesized instance variable '_a',

not existing instance variable 'a'

#import "t1.h"

@implementation t1 -(id)init{

if ( self = [super init] ) {

a = @"a"; }

return self; }

-(BOOL)isStringEmpty {

NSLog(@"_a=%@ a=%@ self.a=%@",_a,a,self.a);

return [a isEqualToString:@""]; }

@end

===========2014-04-09 15:23:25.837 iOS规范sample[5451:70b] _a=(null) a=a

self.a=(null)

相关文章

网友评论

      本文标题:1.8、规则:禁止对属性做出错误的内部成员变量声明

      本文链接:https://www.haomeiwen.com/subject/vlbmjttx.html