実は、大学のプロジェクトとしてリンクリストを実現しようとしています。最初のステップでは、ListElementBase
データ型ごとにこのクラスから継承するクラスと重大なListElementクラスをプログラムしました。
そして2番目のステップでは、代わりに、より柔軟な単一の構造をプログラムしようとします。構造体は、値をオブジェクトとして保持し、値のデータ型を保持する必要があります。これにより、値のキャスト先となるデータ型の情報がオブジェクト内に含まれるようになります。
どういうわけかこのように:
private struct Element
{
public Element Previous;
public Element Next;
public object Value;
public ValueType Type;
public Element(Element sPrevious, Element sNext, object sValue, ValueType sType)
{
Previous = sPrevious;
Next = sNext;
Value = sValue;
Type = sType;
}
}
しかし、DataTypeの処理方法がわかりません。DataTypeのインスタンスを作成したり、のようなコンストラクターを呼び出したりすることはできませんnew Element(..., ..., ..., string)
。
私は完全に間違った道を進んでいますか?