Файл, содержащий int main(int argc, char * argv[]);
, будет запущен первым, так как функция main()
является первой функцией, которая будет запущена.Почти во всех проектах шаблонов XCode этот файл называется «main.m».
edit
Обычно функция main()
приложения Cocoa Touchэто:
int main(int argc, char *argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil);
[pool release];
return retVal;
}
(замените NSApplicationMain()
на UIApplicationMain()
и удалите пул автоматического выпуска, если вы пишете приложение для Mac)
edit # 2
Меня интересует только файл, который запускается первым из папки классов
Простой ответ: "Делегат приложения ", затем все остальное.
Технический ответ на этот вопрос заключается в том, что сначала будут созданы все объекты в вашем файле MainMenu.xib (Mac) или MainWindow.xib (iOS).Обычно объекты в этом файле создаются в том порядке, в котором они появляются, но я не думаю, что это гарантировано.
Так что, если у вас 3 есть пользовательские объекты верхнего уровня в файле MainWindow.xib, товсе они будут созданы одновременно (в пределах разумного).Сначала будут выполняться их initWithCoder:
методы, затем через некоторое время будут выполняться их awakeFromNib
методы (что обычно является самой безопасной «отправной точкой» для этого объекта).
Методы запуска делегата приложения будут происходить где-то втам тоже (я верю между initWithCoder:
и awakeFromNib
).