次のクラスを持つ 3 番目の部分の .NET ライブラリを使用しています。
Shape (抽象基本クラス)
(以下のすべてのクラスは彼から派生したものです)
矩形
サークル
三角形
これらすべてのクラスには Area というプロパティがあります
Shape(s) の配列を調べて、領域を設定します
PS: Area は Shape のプロパティではなく、各クラスのプロパティです。
だから私のコードは次のようになります:
if (shapeVar is Reactangle)
{
(shapeVar as Rectangle).area = value;
}
if (shapeVar is Circle)
{
(shapeVar as Circle).area = value;
}
if (shapeVar is Triangle)
{
(shapeVar as Triangle).area = value;
}
これを行うより良い方法はありますか?ばかげているように感じますが、他に方法が見つかりませんでした
.NET 4 を使用しています