Objective-C main.m没有指定哪个app委托,它仍然有效

时间:2012-10-04 00:37:27

标签: iphone objective-c

在此完成教程:http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphone101/Articles/01_CreatingProject.html

我注意到在main.m支持文件中,他们说初始化发生在这里:

@autoreleasepool {
   return UIApplicationMain(argc, argv, nil, NSStringFromClass([HelloWorldAppDelegate class]));
}

这是有道理的。程序开始时,它选择HelloWorldAppDelegate。然而,在我使用的单视图模板中,初始化值为null:

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

它在哪里指定要运行的应用程序委托?我跑了它,但它工作正常,但不知道为什么有些东西会让我烦恼。它是在另一个文件中声明的吗?

1 个答案:

答案 0 :(得分:2)

它在xib / nib文件中设置。这在documentation for UIApplicationMain()中提到。