ios - 如何在类方法中返回 self ?

标签 ios swift class

试过这个,它给了我一个错误:

class BaseClass {
    class var testProperty: String {
        return "Original"
    }
    class func testingFunc()->Self {
       return self // error - Can not convert return expression of type "Self.Type" to return the type "Self"
    }
}

有什么想法吗? 谢谢

最佳答案

在类/静态函数中,self指类类型。没有实例可以引用,所以得到的是类型,也就是当前作用域。它在实例方法中不一样,其中 self 指的是 <instance>.self

class Foo {
    class func classMethod() -> Foo.Type {
        return self // means Foo.self
    }

    func instanceMethod() -> Foo {
        return self // means <instance of Foo>.self
    }
}

关于ios - 如何在类方法中返回 self ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34845113/

相关文章:

ios - objective-c 中适配器模式的正确实现

ios - 升级到 Cordova 4.0.0 导致 iOS 构建失败,代码为 65

c++ - C++类中的C'tor

xslt - 具有 XPath 的唯一 ID 和多个类

Python 字符串到其他类

ios - 将#selector 存储在变量中

ios - 无法使用 xcodebuild 归档应用程序

button - 一个按钮,两个 Action 和名称更改,Swift?

ios - 计算 UITableViewCell 的最佳图像大小

ios - 是否可以强制 MapKit 在不聚类的情况下显示所有注释?