Avatar
omochimetaru 6/19/2020 8:36 AM
(連続した投稿が混ざっちゃったので再投稿) こういうことだ。 class Animal { init<X: P2>(_ x: X) { } required convenience init() { self.init(S2()) } } class Cat: Animal { override init<X: P1>(_ x: X) { super.init(S2()) } } func main(_ animalType: Animal.Type) { animalType.init() } main(Cat.self) convenience required initからinitを呼び出したときに動的ディスパッチです。 (edited)