iOS 优化知识点积累

1, 应用启动

首先我们来了解一下,这个iOS应用启动的流程,首先应用启动,执行mian函数;

2,执行UIApplicationMain函数,创建UIApplication对象,创建UIApplicationDelegate对象。

3,读取info.plist文件的配置,建立沙箱,权限检查等。

4,创建应用程序的  main RunLoop循环。

5,给代理发送程序启动的代理方法,application:didfinishllaunchoption 。如果info文件里有storyboard,加载,如果没有,则根据代码来创建主window,然后创建根视图控制器。

6.能。如果使用type属性的话,会崩溃,因为类别不能增加属性。可以在类别里添加get,seter方法.get用objc_getAssociatedObject(self,@"propertypeName";)set方法用objc_setAssociatedObject(self,@"propertypeName",propertypeName,OBJC_ASSOCIATION_COPY_OBJC_ASSOCIATION_COPY);

7.NSLog(@"%ld %ld %ld %ld ",sizeof (char), sizeof(char[2]) ,sizeof(char *),sizeof((char *)(124)));这句话在32位系统下输出结果是什么?

答:1,2,8,8 第一个,char字符型1的长度;第二个,XX;第三个,是指针的大小,32位计算为4,64位计算机为8。

你可能感兴趣的:(iOS 优化知识点积累)