0

私は、種を使用してさまざまな病気をシミュレートできる生態系のシミュレーターを作成しています。私の問題は、4つの種を使用し始めることですが、さらに必要な場合は...保存する変数がさらに必要です。私の質問は、方法はありますか?自分のプログラムでのイベントの実行中に動的変数を作成できるようにするためにリフレクションを使用しますか? ありがとうございました!Windows Presentation Foundation と C# を使用しています

4

1 に答える 1

3

これを処理する通常の方法は、病気の種の基本クラスを用意し、コレクションを使用してそれらすべてを保持することです。

public abstract class DiseaseBase
{
    public abstract void Spread();
}

public class Anthrax : DiseaseBase
{
    public override void Spread()
    {
        GetPostedToPolitician();
    }
}

public class BirdFlu : DiseaseBase
{
    public override void Spread()
    {
        Cluck();
        SneezeOnHuman();
    }
}

public class SwineFlu : DiseaseBase
{
    public override void Spread()
    {
        //roll in mud around other piggies
    }
}

public class ManFlu : DiseaseBase
{
    public override void Spread()
    {
        //this is not contagious
        //lie in bed and complain
        //get girlfriend to make chicken soup
        //serve chicken soup with beer and baseball/football/[A-Za-z0-9]+Ball
    }
}

public List<DiseaseBase> DiseaseCollection = new List<Disease>();

したがって、すべてが基本クラス (DiseaseBase) としてコレクションに格納され、基本クラスやインターフェイスで抽象メソッドを適切に使用することで、各疾患インスタンスを常に基本オブジェクトとして処理できます。

于 2013-08-08T22:44:54.990 に答える