質問: hoge; // true になるようにしたい } ``` 暗黙型変換で対応しようと考えましたがInterfaceにキャストできずに断念しました。 どのようにすれば上記のような演算子を実装できますでしょうか。
回答: C#の演算子オーバーロードには以下のような制約があります。 1. シグネチャ(引数もしくは型変換の戻り値)にメソッドを定義する型を含まなければならない。 2. インターフェイスを含む型変換は定義できない。 ですので質問の例は`Hoge`型に演算子を定義するしかないと思います。 外部からインターフェイス型と既存の型との演算子を定義することはできませんので、通常は拡張メソッドで代用することになります。