0
今まで、私はこの1つのようなクラスだった:ジェネリック制限
type C<'a when 'a :> A> (...)
をしかし、今、私は新しいタイプB作成:
type B (...) =
inherit A()
をしかし、私はサポートするために、CをしたくありませんB、これはコンパイルされません。
type C<'a when 'a :> A and not 'a :> B> (...)
どうすればいいですか?
でも可能な場合でも、とにかくBをAにキャストすることで依然として壊れてしまいます。 – Massif
私はそれがOOP標準では間違っていることを知っていますが、私は継承を継承する複雑なシナリオを持っていますが、Bは本当にAではありません。 A. –
@Ramon:意外にも、あなたが相続を濫用するとき、あなたはこのような問題に対して立ち上がるでしょう。私はあなたのデザインを再考することを強く勧めます。 –