質問: ### 前提・実現したいこと C#でinterfaceに演算子のオーバーロードをしたい。 ### 発生している問題・エラーメッセージ インターフェースに演算子を含めることができません。 ### 該当のソースコード ``` interface ITest { public static double operator + (ITest A,ITest B); } ``` ### 試したこと 実際にこのインターフェースを使用するクラスに演算子のオーバーロードを実装しようとしたが、設計上無理があったため、断念。
回答: 演算子のオーバーロードは、優秀なフレームワーク、ライブラリ製作者以外は必要のない機能のなので、 考えるだけ無駄だと思います。 普通に、.Add() でやったほうがいいと思います。 そもそも、複数のインタフェースがあったとき、それぞれのインタフェースで演算子をオーバーロードしたら、何が起こるかわからないものになると思います。