C#, C♯, C#相談室 Part91 [無断転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0424デフォルトの名無しさん
2016/08/28(日) 20:56:44.18ID:hQF+q+Zk細かく書くと面倒なので擬似コードだけど、(拡張メソッドを通常メソッドと同様に呼び出す以外は)同じことが実際にできる
https://ideone.com/hJQfol
Main.exeではShapeクラスとRectクラスが定義されている。
これ単体ならすべてのShape継承クラスが拡張メソッドDrawを持ってる
Main.exe用のプラグイン、plugin.dllを他の人が後から作り、Main.exeのShapeを継承したTriangleクラスを実装している。
Main.exeはdllを動的に読み込み、インスタンスを作り、Hogeメソッドに渡している。
ここで、plugin.dllでは拡張メソッドDrawが定義されていない。そして、この拡張メソッドの定義を強制する手段が存在しない
■ このスレッドは過去ログ倉庫に格納されています