Xcode 中的main.m

在幾乎全部的程序開發中程序通常都是從main函數開始運行的,那麼IOS程序也不例外,在上圖中咱們能夠看到Xcode爲咱們生成了一個main.m文件:函數

//
//  main.m
//  iOS
//
//  Created by luoyin on 15/5/22.
//  Copyright (c) 2015年 luoyin. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "AppDelegate.h"

int main(int argc, char * argv[]) {
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

這個默認的iOS程序就是從main函數開始執行的,可是在main函數中咱們其實只能看到一個方法,這個方法內部是一個消息循環(至關於一個死循 環),所以運行到這個方法UIApplicationMain以後程序不會自動退出,而只有當用戶手動關閉程序這個循環才結束。這個方法有四個參數:spa

  • 第一個參數和第二個參數其實就是main函數的參數,分別表明:參數個數、參數內容;
  • 第三個參數表明UIApplication類(或子類)字符串,這個參數默認爲nil則表明默認爲UIApplication類,用戶 能夠自定義一個類繼承於這個類;若是爲nil則等價於NSStringFromClass([UIApplication class]),你們能夠本身試驗,效果徹底同樣;UIApplication是單例模式,一個應用程序只有一個UIApplication對象或子對 象;
  • 第四個參數是UIApplication的代理類字符串,默認生成的是AppDelegate類,這個類主要用於監聽整個應用程序生命週期的各個事件(其實相似於以前咱們文章中提到的事件監聽代理),當UIApplication運行過程當中引起了某個事件以後會調用代理中對應的方法;
相關文章
相關標籤/搜索