摘要: 1.emacs快捷键command+[ or ] :左移右移 代码tab :自动完成联想到的代码Esc:显示自动完成列表control+F:前移光标control+B:后移光标control+P:光标移到上一行control+N:光标移到下一行control+A:移动到本行行首control+E:移动到本行行尾control+D:删除本行control+/:将光标移到下一个占位符 2.批量编辑 --快照在你做任何冒险的事情之前最好先创建一个快照File-->create snapshot3.#pragma mark 使代码更易读易找 阅读全文
posted @ 2013-03-02 17:11 不想当元帅的好兵。 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 主要为了解决引用死锁1.import会包含这个类的所有信息,包括实体变量和方法,而@class只是告诉编译器,其后面声明的名称是类的名称,至于这些类是如何定义的,暂时不用考虑,后面会再告诉你。2.在头文件中, 一般只需要知道被引用的类的名称就可以了。 不需要知道其内部的实体变量和方法,所以在头文件中一般使用@class来声明这个名称是类的名称。 而在实现类里面,因为会用到这个引用类的内部的实体变量和方法,所以需要使用#import来包含这个被引用类的头文件。3.在编译效率方面考虑,如果你有100个头文件都#import了同一个头文件,或者这些文件是依次引用的,如A–>B, B–>C 阅读全文
posted @ 2013-03-02 14:44 不想当元帅的好兵。 阅读(123) 评论(0) 推荐(0) 编辑
摘要: p38@interface 定义类的公共接口,用来提供类的公共描述通常被成为API application programming interface@implementation 中可以定义那些在@interface中无相应声明的方法,可以把它们当做是私有方法,仅在类的实现中使用。事实上,obj中不存在真正的私有方法,也无法把某个方法标识成私有方法,从而禁止其他代码调用它。这是obj动态本质的副作用。p39@interface和@implementation间的参数名不同是正确的。如果使用相同的变量名会隐藏初始变量,可以为参数使用新的名称来避免问题。p64getter方法engine返回实. 阅读全文
posted @ 2013-03-02 00:29 不想当元帅的好兵。 阅读(295) 评论(0) 推荐(0) 编辑