【发布时间】:2016-04-14 11:34:49
【问题描述】:
内存分配可能会失败,但我认为 Swift 无法处理这种情况。 github 上的代码调用了一个不可失败的初始化器
public convenience init?(length: Int) {
let memory = malloc(length)
self.init(bytes: memory, length: length, copy: false) { buffer, amount in
free(buffer)
}
}
编辑: 代码来自 Swift 3 中的原生 Swift Foundation 框架。
【问题讨论】:
-
有趣的问题。您可能会在swift.org/community/#mailing-lists 的其中一个邮件列表中获得更好的答案。
-
看起来他们只是保留它以备将来可能失败而无需更改界面。
标签: swift swift2 nsdata initializer failable