IOS main函数

Xcode4.2前的main:

int main(int argc, char *argv[])
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    int retVal = UIApplicationMain(argc, argv, nil, nil);
    [pool release];
    return retVal;
}



Xcode4.5的main
int main(int argc, char *argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, nil]));
    }
}


  UIApplication是初始化程序的核心,它接受4个参数。
  其中argc和argv两个参数来自于main()接受的两个参数;另外两个String型参数分别表示程序的主要类(principal class)和代理类(delegate class)。
  如果主要类(principal class)为nil,则默认为UIApplication;如果代理类(delegate class)为nil,则程序假设程序的代理来自Main nib文件。如果这两个参数任意一个不为nil,则UIApplicationMain()函数则会根据参数创建相应的功能类。
  因此,如果程序中使用自定义的UIApplication类的子类(不建议继承UIApplication类建立自定义的子类),你需要将你的自定义类名作为第3个参数传进来。

IOS 声明周期:

IOS main函数

你可能感兴趣的:(ios)