繁体   English   中英

推出Swift应用程序序列

[英]Launch sequence of Swift app

任何人都知道快速应用程序的启动顺序? 正如我所看到的,快速应用程序中没有main功能。 那么谁负责这样做

// Entry point of a normal iOS app
int main(int argc, char * argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
    }
}

您的应用程序对象和AppDelegate将在此处创建。 但对于快速的应用程序,我想知道谁在创建这些。

如果有人知道,请分享您的想法。

如果你看一下AppDelegate.Swift类,你会发现在文件的全局区域写的@UIApplicationMain语句。 正如@Daniel在他的回答中也提到的那样。

现在我尝试评论该行并编译代码,看看我得到了什么..

在此输入图像描述

在非常简单的语言中,错误说编译器试图搜索implicit entry/start for main executable ,但没有得到。

它显示了AppDelegate.Swift中的@UIApplicationMain语句为Swift程序创建了一个隐式入口点。

我试着明确写出main.swift类......它的工作原理。

我的main.swift看起来像..

import Foundation
import UIKit

UIApplicationMain(C_ARGC, C_ARGV, NSStringFromClass(UIApplication), NSStringFromClass(AppDelegate))

快速的书说:

在全局范围编写的代码用作程序的入口点,因此您不需要主函数。

如果你看看你的AppDelegate有一个标记@UIApplicationMain ,它在任何范围之外并被视为入口点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM