据我所知,没有对等的语法.
关于等效技术,理论上可以使用闭包并在其中定义 struct 和类.可悲的是,我不能让它在操场或项目中工作,而不让它崩溃.很可能这还没有准备好在当前的测试版中使用.
比如...
protocol SomeProtocol {
func hello()
}
let closure : () -> () = {
class NotSoAnonymousClass : SomeProtocol {
func hello() {
println("Hello")
}
}
let object = NotSoAnonymousClass()
object.hello()
}
...当前输出此错误:
invalid linkage type for global declaration
%swift.full_heapmetadata* @_TMdCFIv4Test7closureFT_T_iU_FT_T_L_19NotSoAnonymousClass
LLVM ERROR: Broken module found, compilation aborted!
Command /Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift failed with exit code 1