1 除非有必要,否则不要引入头文件。
2 多用字面量语法:
例如:
NSString *string = @"Effective Objective-C";
NSNumber *number = @1; 代替 NSNumber *number = [NSNumber numberWithInt:1];
注意:字面量创建数组或者字典时,元素不能为空,否则会报异常。
3 不要用#define去定义常量,因为如果有重名的变量编译器也不会报错,会导致冲突。
4 善用枚举值去表示状态。注:在switch中不要使用default分支,因为这样会提示并未处理所有枚举分支。
5 @property自动生成setter和getter,取消的话在.m文件中写@dynamic 属性名
assign和weak的区别:
虽然assign和weak都是弱引用,但是weak所指对象被清除时,属性值也会变为nil。而assign则不会自动清空,一旦访问这个属性就会报坏内存访问。
网友评论