1

自動生成されたクラスを、生成されているのと同じ実行で使用することは可能ですか?私は、ファクトリとして機能するものを実現しようとしていますが、自動生成されたクラス用です。私のシナリオは次のようなものです。

結果のファイルに何を含めることができるかを指定するファイルがあります。これらの結果ファイルは、統計またはそれ以外のものを計算するために使用する必要があります。ここで、これらを読み取ったときにデータを変更したいと思いますが、ソフトウェアはファイルに書き込まれる部分を認識していないため、データをファイルに内部的に保存する方法を認識していません。私にはリーダーとライターがいます(友人によって作られ、非常にジャンルが広く、使いにくいです)。定義を使用してクラス/構造体を自動生成できると思いました。

たとえば、記述できるクラスは「A」、「B」、「C」です。「A」と「B」にはそれぞれ2人と3人の子供がいるとします。これらをA0、A1、B0、B1、B2と呼びましょう。

今、ソフトウェアの内部で、私は書きたいと思います:

A aObject = new A0();
aObject.variable1 = 2;
aObject.variable2 = "something";

B bObject = new B1();
bObject.SomeVariable = 42;
bObject.SomeOtherVariable = "someValue";

変数の名前とデータが表すタイプは、仕様ファイルに書き込まれます。たとえば、xmlでは、次のようになります。

<A0>
<Variable>
   <Name>variable1</Name>
   <type>int</type>
</Variable>
<Variable>
   <Name>variable2 </Name>
   <type>string</type>
</Variable>
</A0>

(A1、B0、B1、B2などと同じ)

ここで、結果ファイルを読み取り、A0を自動生成して生成し、データを変更して(作成したばかりのクラス/構造体A0を使用して)、ファイルに再度書き込む必要があることを認識します。

これに対する私の解決策は、すべての可能なクラス/構造体を事前に生成し、それらを含めることです。これに関する問題は、A、B、およびCのバージョンが変更されているか変更されることです。

すべての助けに感謝します:)

4

1 に答える 1

1

あなたの質問の残りの部分は、正直に言うと私にはそれほど意味がありませんでしたが、あなたの最初の質問に答えるために:はい、あなたはそれを行うことができます。たとえば、ここを見てください。

よろしくGert-Jan

于 2011-08-30T09:51:58.717 に答える