Swift中的匿名类是否有等效的语法或技巧?

谢谢

推荐答案

据我所知,没有对等的语法.

关于等效技术,理论上可以使用闭包并在其中定义 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

Swift相关问答推荐

是否在字符串属性上搜索数组和子数组?

带DispatchSourceTimer的定时器

在SWIFTUI&39;S视图修改器中使用等待关键字

更改 SwiftUI 中按钮矩阵的填充 colored颜色

根据其属性组合 2 个模型以在 Swift 中创建另一个模型

数组中某些元素的总和

标有@MainActor 的函数中的异步调用是否也在主线程上运行?

是否有一个带有空初始值设定项的 Swift 类/ struct 的标准协议

在 struct 中的序列和非序列泛型函数之间进行 Select

在 SwiftUI 中的 ForEach 中使用 id 时如何为数组设置动画索引

将数据附加到 Firebase 实时数据库后,NavigationLink 将我重定向到上一个视图

如何仅将 SwiftUI 不透明度应用于父视图?

单元测试和私有变量

AES 加密和解密

在运行时访问 UIView 宽度

MKAnnotation Swift

CMutablePointer - 如何访问它?

3D touch /强制touch 实现

如何在 Swift 中将 NSURL 转换为字符串

在 Swift 中子类化 NSObject - 初始化器的最佳实践