[OC Foundation框架 - 1] 常用结构体
底层封装是使用了typedef定义的结构体
typedef struct _NSString{
xxx
xxx
} NSString;
1. NSRange 结构体
#注意结构体不是对象
3种定义方式
1 typedef struct _NSRange{ 2 int location; 3 int length; 4 } NSRange;
(1) 先声明后赋值
(2)同时声明、按照顺序赋值
(3)使用c函数,同时声明、赋值,并指定赋值的成员变量名
1 NSRange range = {1, 2}; 2 NSRange range2 = {.location = 1, .length = 2}; 3 NSRange range3 = NSMakeRange(1, 2);
返回对象字符串形式:
NSStringFromRange(NSRange)
转换并返回一个字符串
2. NSPoint / CGPoint 结构体
1 void point() 2 { 3 NSPoint p; 4 p.x = 1; 5 p.y = 2; 6 7 p = NSMakePoint(4, 2); 8 9 p = CGPointMake(11, 33); 10 11 NSString *str = NSStringFromPoint(p); 12 NSLog(@"The point is %@", str); 13 }
3. NSSize/ CGSize 结构体
1 void size() 2 { 3 NSSize size; 4 size.width = 100; 5 size.height = 90; 6 7 size = NSMakeSize(42, 55); 8 9 size = CGSizeMake(63, 77); 10 11 NSString *str = NSStringFromSize(size); 12 NSLog(@"The size is %@", str); 13 }
4. NSRect / CGRect
1 void rect() 2 { 3 NSRect r; 4 r.origin.x = 10; 5 r.origin.y = 12; 6 r.size.height = 44; 7 r.size.width = 62; 8 9 r = NSMakeRect(13.11, 42.11, 42.55, 11.44); 10 11 r = CGRectMake(13.11, 42.11, 42.55, 11.44); 12 13 }
origin 是一个 NSPoint
如果一件事情你觉得难的完不成,你可以把它分为若干步,并不断寻找合适的方法。最后你发现你会是个超人。不要给自己找麻烦,但遇到麻烦绝不怕,更不要退缩。
电工查找电路不通点的最快方法是:分段诊断排除,快速定位。你有什么启示吗?
求知若饥,虚心若愚。
当你对一个事情掌控不足的时候,你需要做的就是“梳理”,并制定相应的规章制度,并使资源各司其职。