第二课的题目叫Xcode5,现在使用的版本已经是Xcode7,本来打算跳过的,但是还是担心会漏掉一些不熟悉的内容,快进着看完的,摘录一些不太深入了解的知识点。
1.- (void)addCard:(Card*)card atTop:(BOOL)atTop;
- (void)addCard:(Card*)card
如上两个方法所示,如果想要某些参数可选,可使用类似方法的重载,让方法具有不同参数,这两个方法是两个完全独立的方法,这是Object-C中唯一的方法
2.NSMutableArray&NSArray
一般NSArray都是不变的,创建之后就不可变,既不可删除也不能添加,前者是后者的子类。详细:http://www.cnblogs.com/stoic/archive/2012/07/09/2582773.html
3.if(!_cards)_cards= [[NSMutableArrayalloc]init];
这段代码让我有了新的认识,_cards这个实例变量最开始会是0,Object-C中所有的实例变量都是从0开始,包括指针。@property(strong,nonatomic)NSMutableArray*cards;也就是说该属性最开始没有指向任何东西,所以我们在最开始操作实例变量的时候并不会引发crash,因为在前一讲得时候,在OC中可以对空指针发送消息。现在要做的就是在堆中分配空间,并赋值给实例变量。alloc是分配内存,init则用于初始化内存。
4.NSUiInteger&NSInteger
NSUInteger是64位无符号整型Iiphone5s之后是64位,之前的都是32位
5.字符串前面的@符号,他们的作用是让所有字符串为字符串对象,如果没有这个符号,则是const char
6.(instancetype)init
剩下的部分就是在讲Xcode5得具体使用方法了,图形化创建操作界面
网友评论