2017-05-17 45 views
0
protocol Foo { } 

class MyClass: Foo { 
    public let ref: Foo.Type = MyClass.self //another way to call MyClass.self? 
} 

我目前使用MyClass.self获取类型。有没有另一种方法来做到这一点?这纯粹是句法,我只是希望使用像self.Type这样的东西。另一种方法获得类从类内类型在迅速

+0

MyClass.self是做到这一点的最好办法是最好的。你想要做什么? –

+0

你遇到了什么问题? –

回答

1

这就是你会得到直至建议SE-0068 "Expanding Swift Self to class members and value types"在斯威夫特实现4

+1

我可能会误解,但我相信一旦提出这个建议,'Self'将类似于'type(of:self)',因此在实例属性的初始化表达式中是不可访问的即使例如在懒惰属性的初始化表达式中,对于子类不会是“MyClass.self” - 尽管如此,OP可能需要动态类型)。但无论如何,我想我们必须等待并看看它是如何实现的。 – Hamish