私はクラスは、例えば有する:アップキャスト関連 - クラス変換
class BaseDataPoint
{
public double A;
public double B;
}
、後にコードで、Iは、上記ので
class ReportDataPoint : BaseDataPoint
{
public double C;
}
にそれを拡張する必要は一例であり、コピーするフィールドが他にもたくさんありますが、手動でフィールドをコピーするのではなく、ReportDataPoint
にBaseDataPoint
インスタンスを「変換」することは可能ですか(いくつかのトリックを介して)?
私は私の知っていることを
BaseDataPoint p1;
...
ReportDataPoint p2=(ReportDataPoint)p1; // FAILS at runtime
ReportDataPoint p3=new ReportDataPoint(p1); // can't compile