摘要:
//选择排序 void test2(int a[],int len){ //每次找出一个最小值,最小值依次与原数组交换位置,通过下标来完成交换,最小值下标每次都在变,变量存储 // 假如第一个是最小值 int mine=0; int teamp=0; // 外层负责趟数 for (int i=0; 阅读全文
摘要:
addTarget原理: 当一个控件addTarget时,先到runLoop注册,然后runLoop才会监听该事件,事件处理按照响应者链条 以下以button为例图解: 阅读全文
摘要:
自动释放池的原理: 每一次运行循环开启时,会创建自动释放池 程序执行过程中的自动释放对象,出了作用域之后,会被添加到最近的自动释放池 运行循环结束前,会释放自动释放池 以下是图解: 阅读全文
摘要:
SDWebImage底层实现原理: 其实是有沙盒缓存机制,主要由三块组成 1.内存图片缓存 2.内存操作缓存 3.磁盘沙盒缓存 以下是图解: 阅读全文
摘要:
无沙盒缓存原理:主要由两部分组成 1.内存图片缓存 2.内存操作缓存 阅读全文
摘要:
同样明文同样算法得到不同密码原理: 用户每次登陆明文是一样的,对用户而言密码没有改变,但加密后的密码每次都不相同,主要是由于时间戳(年月日时分),服务器会产生两个密码: 1.当前时间的密码 2.提前一分钟的密码 例如:用户 11:23 登陆 >服务器会产生两个密码:11:23&11:22 一分钟以内 阅读全文
摘要:
远程推送原理:(必须长链接) 1.首次登陆:发送设备的UDID&app的BundelID 2.苹果加密后:返回一个deviceToken 3.QQ应用给QQ服务器发送deviceToken 4.存储到QQ服务器 5.李四给张三发消息(假设张三应用不在前台) 6.查询张三的deviceToken 7. 阅读全文
摘要:
线程的五种状态: 新建:创建线程 就绪:将线程放入可调度线程池 运行:CPU执行该线程 阻塞:此时线程移出可调度线程池,CPU暂不执行该线程 死亡:线程结束(强制退出,正常退出,异常) 阅读全文
摘要:
四大对象: 1.UIApplication 2.AppDelegate 3.UIWindow 4.UIViewController 阅读全文
摘要:
应用程序的生命周期: 要了解程序的生命周期必须先了解程序的启动原理: 1.程序的入口main函数 2.进入UIApplicationMain函数(循环函数) 2.1创建UIApplication实例 2.2实例化Application的delegate 2.3开启事件循环 3.根据有无storybo 阅读全文