あまり実用的ではないかもしれませんが、それでも興味深いものです。
行列の乗算に関するいくつかの抽象的な質問があるため、int の行列をすぐに実装してから、自分の仮定をテストしました。
ここで、10 進数または倍精度で使用したい場合は、単に int マトリックスが適していないことに気付きました。もちろん、すべてを double にキャストすることもできますが、それは便利な方法ではありません。
足し算や掛け算ができるオブジェクトがたくさんあるという仮定を続けてください。私のマトリックスでそれらを使わないのはなぜですか?
したがって、それが Matrix クラスになると考えた直後に、ジェネリック T を使用できないことに直面しました。加算および乗算できるインターフェイスをサポートする必要があります。
そして問題は、自分のクラスで演算子をオーバーライドできたのですが、演算子をサポートするインターフェースを導入できなかったことです。また、組み込み型に演算子がありますが、それらに対するインターフェイスはまだありません。
ワーカークラスの本体を複製したくない場合、そのような場合はどうしますか? ラッパーと暗黙のキャストはあまり役に立ちませんでした。美しいソリューションに興味があります。
ありがとう。