Avatar
omochimetaru 6/19/2020 8:20 AM
あれ?さっきの変な気がしてきた
8:26 AM
class Animal { init<X: P2>(_ x: X) { } } class Cat: Animal { override init<X: P1>(_ x: X) { super.init(S2()) } }
8:26 AM
これはコンパイルできますね。
8:29 AM
どういう問題があるの?
そもそもoverrideとして型がおかしいからoverrideできない、というレベルのエラーに思えます。
8:30 AM
ただこのoverrideって別に動的ディスパッチされる事がなさそうだから、実際には型がめちゃくちゃでも問題は無いのかな?その場合overrideじゃなくて単に同名の無関係なinitがあるって事ですけど。
8:34 AM
あ、わかったかも・・・?