繁体   English   中英

这个方块在Swift-Alamofire中是什么意思?

[英]What does this block mean in Swift - Alamofire?

这是Alamofire / Manager.swift中的代码块:

  • 它在一个名为“公共类管理器”的类中

public static let sharedInstance: Manager = {
    let configuration: NSURLSessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration()
    configuration.HTTPAdditionalHeaders = Manager.defaultHTTPHeaders

    return Manager(configuration: configuration)
}()

显然,这是“让某物等于闭包”,但是我没有得到的是行尾的“()”是什么意思?

推迟执行代码? 怎么样? (在我看来,执行不会延迟,因为它带有“()”?而且我想知道为什么这不会导致内存循环的存在?它返回管理器本身,并且返回的新实例也将做同样的事情,返回一个新的自我...

为什么不使用关键字“懒惰”?

我有一种奇怪的感觉,我似乎也在其他地方使用过这种用法。 我现在正在学习Swift 60天。 我快还是慢? 也要成为一名iOS开发人员吗?(我的意思是要成为一名真正的iOS开发人员,而不是注册该程序)

现在,我有点困惑,正在阅读我可以获得的所有源代码。 有时,我觉得官方文档和Xcode很烂,而且我不知道如何从头阅读源代码。 有什么提示和建议吗?

这将使用闭包的结果来初始化sharedInstance (最后没有括号的话,它只会将其初始化为闭包本身)。这是一种标准语法,用于使用对于简单表达式而言过于复杂的初始化程序来初始化变量。 在这种情况下,需要多个语句,以便可以初始化HTTPAdditionalHeaders

好的,我弄错了。 诀窍在于,sharedInstance使用了关键字“静态”,这很常见,但是在我最熟悉的python中,不要使用此关键字。

根据官方指南:

“您还可以定义属于类型本身的属性,而不是属于该类型的任何一个实例。 无论您创建了多少个该类型的实例,这些属性将永远只有一个副本。 这些属性称为类型属性。”

苹果公司“快速编程语言”。 iBooks的。 https://itun.es/cn/jEUH0.l

暂无
暂无

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

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