关于UIApplicationMain:
main函数中执行了一个UIApplicationMain这个函数
int UIApplicationMain(int argc,char *argv[],NSString *principalClassName,NSString *delegateClassName);
argc、argv:直接传递给UIApplicationMain进行相关处理即可
principalClassName:指定应用程序类名(app的象征),该类必须是UIApplication(或子类)。如果为nil,则用UIApplication类作为默认值
delegateClassName
:
指定应用程序的代理类
,该类必须遵守
UIApplicationDelegate
协议
UIApplicationMain
函数会根据
principalClassName
创
建
UIApplication
对
象,根据
delegateClassName
创建一个
delegate
对象,并将该
delegate
对象赋值给
UIApplication
对
象中的
delegate
属性
接着会建立应用程序的MainRunloop(事件循环),进行事件的处理(首先会在程序完毕后调用delegate对象的application:didFinishLaunchingWithOptions:方法)
程序正常退出时UIApplicationMain函数才返回