OC高级
文章平均质量分 64
cuichengjie
这个作者很懒,什么都没留下…
展开
-
block的用法, 全局变量
#import //在其他文件定义的全局变量如果想在本文件中使用,则需要在本文件的main函数外部加上关键字extern + (int d),这样就可以使用其他文件中定义的全局变量; //在两个不同的.m文件中同时定义了同一个名称的变量,如果想在各自的文件中使用,互不影响,那么只要把他们在各自的文件中定义成一个静态全局变量就可以了,不然,两个文件(.m)同时编译,会重复,从而出错; int d原创 2014-08-10 15:51:37 · 1404 阅读 · 0 评论 -
OC中按姓名,年龄,身高升序,降序排序
{ NSString *_name;//性别 NSInteger _age;//年龄 CGFloat _height;//身高 } //setter name - (void)setName:(NSString *)name; //getter - (NSString *)name; //setter age - (void)setAge:(NSInteger)age;原创 2014-08-10 16:13:31 · 1752 阅读 · 0 评论 -
父类型指针可以指向子类型的对象。但是对于子类型的指针不能指向父类型的对象(原理)
//父类型指针可以指向子类型的对象。但是对于子类型的指针不能指向父类型的对象 //reason :父类有的方法子类全有,但是子类有的方法,父类不一定全有(牵扯到isa) //原理:首先看看接收对象的类型是不是有对象要调用的方法,如果有,则看对象(指针变量)指向的那块空间里对应的isa(类类型,哪个类开辟空间,isa就是哪个类)是否有该方法,如果有,则正确原创 2014-08-13 13:05:06 · 913 阅读 · 0 评论 -
有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).
//第一种方法NSArray *arr = @[@"aa",@"bb",@"cc",@"dd",@"ee",@"ff",@"jj",@"hh",@"ii",@"gg",@"kk",@"ll",@"mm" ,@"mm",@"mm",@"mm"]; // 二维数组 NSMutableArray *arr1 = [NSMutableArray array]; for (原创 2014-08-12 22:56:11 · 1860 阅读 · 0 评论 -
排序,block,降序排序
NSArray *arr = [[NSArray alloc] initWithObjects:@"cc", @"bb", @"ee", @"dd", @"aa", nil]; //1.对数组进行升序排序 //sortedArrayUsingSelector:排序方法,使用场景,适用于升序排序以及自定义的类排序 NSArray *arrAscendi原创 2014-08-16 18:36:25 · 606 阅读 · 0 评论 -
笑笑语法
方法与顺序无关 2.枚举绑定数据类型 enum { ObjectiveC, Java, Ruby, Python, Erlang }; typedef NSUInteger Language; 3. 属性不用写@synthesize 4.语法简化 4.1 NSNumber原创 2014-08-17 15:52:31 · 447 阅读 · 0 评论 -
NSCopying协议的使用,setter和getter方法的作用,内存管理高级,集合的内存管理
#import "Teacher.h" @interface Student : NSObject { Teacher *_tea;//学生类的实例变量 } @property (nonatomic, retain) Teacher *tea;//当语义属性声明为retain时,.m文件会自动生成setter方法和getter方法 @property (nonatomic, copy) T原创 2014-08-17 09:58:26 · 550 阅读 · 0 评论