-ios面试经之autorelease 和block
1. ARC机制 中的 强指针 strong 和弱指针 weak
只要有强指针指向一个对象,那么系统就不会回收该对象,反过来说也就是只要没有强指针指向,系统会立即回收该对象
//弱指针不影响,对象被回收 (默认情况下。所有类型的指针为强指针类型)
-fno-objc-arc 用于修改那些采用非ARC机制的文件
2. 使用继承关系来扩充一个类,会出现一个弊病,就是高耦合性,但是使用catgory(分类,类别)能够帮我们扩充一个类的功能,却减少了耦合性
3.block(数据类型的基本特性如下):
3.1 作为参数传递 作为函数的返回值 声明成成员变量
//block 就是弥补了 指向函数的指针,不能够直接保存一个函数体 (代码块)
例:void (^myBlock)()=^{
NSlog(@"test");
}
int (^sumBlock)(int a, int b) = ^ int (int a, int b){
return a +b ;
}
int result = sumBlock(10,20);