2011-05-16 48 views
0

我想了解为什么我的应用程序没有离开主体(启动)。 我认为这条线是原因。我的代码没有离开主体

int retVal = UIApplicationMain(argc, argv, nil , nil); 

的源代码:

#import <UIKit/UIKit.h> 

int main(int argc, char *argv[]) 
{ 
    printf("I'm in main"); 

    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 

    printf("\nafter the autiorealeas pool"); 

    int retVal = UIApplicationMain(argc, argv, nil , nil); 

    printf("\nbefore the [pool relase] call"); 

    [pool release]; 
    printf("Leaving main"); 
    return retVal; 
} 
+3

别担心!这就是它应该是... :) – 2011-05-16 05:31:48

回答

5

这是正确的 - 它不会返回! according to the Apple docs

返回值

即使被指定的整数返回类型,这个函数永远不会返回。当用户通过按下主页按钮退出iPhone应用程序时,应用程序将移动到后台。

+0

除了printf()调用这是默认模板。我甚至不必为了我的应用程序而启动main。 – lampShade 2011-05-16 05:33:12

+0

没错,你没有。对函数“UIApplicationMain()”的调用开始主UIKit runloop,从中你的应用程序不会退出,直到它终止。你不需要为普通的UIKit应用程序触摸'main()'函数。 – 2011-05-16 07:29:53

相关问题