C♯相談室 Part26
レス数が950を超えています。1000を超えると書き込みができなくなります。
0987デフォルトの名無しさん
2005/11/10(木) 08:52:32public class Hoge : IHoge {}
public class Foo<T> {
public Foo(T value) {
this.value = value;
}
private T value;
public static implicit operator Foo<T>(T t) {
return new Foo<T>(t);
}
}
public static void Main() {
Hoge hoge = new Hoge();
Foo<Hoge> a = hoge;
Foo<IHoge> b = hoge;
Foo<IHoge> c = (IHoge)ihoge; // コンパイルエラー
}
最後のがかなり納得できない。
インターフェイスとのキャスト演算オーバーロードが定義できないのが原因なんだけど。
レス数が950を超えています。1000を超えると書き込みができなくなります。