我有幾個類都繼承了相同的Shape
類。當我創建一個新形狀時,我希望它具有隨機形狀。我認爲這樣做的方式是創建一個鏈接到所有構造函數的列表,並且當我需要創建一個新形狀時,我將從列表中獲取一個隨機構造函數,並使用它來構造我的形狀。我試圖創建休耕方式的名單,但我得到的錯誤:是否有可能在c#中創建一個將創建隨機對象的構造函數列表?
List<Action> constList = new List<Action>();
constList.Add(SShape());
constList.Add(OShape());
constList.Add(LShape());
的Shape
構造函數定義:
class Shape
{
public Shape(PlayGrid grid, Color color)
{
...
}
...
}
每個子形狀的構造函數的定義如下:
class IShape : Shape
{
public IShape(PlayGrid grid, Color color) : base(grid, color)
{
...
}
...
}
什麼是構造列表的正確方法,以及如何使用列表中的構造函數?
承包商還需要獲取在不同形狀之間變化的參數。
在你的形狀基類中,有一個靜態函數GetRandomShape() – 2013-03-22 12:24:08
你的形狀類是Action的子類嗎? – 2013-03-22 12:24:15
@StealthRabbi,no。 – SIMEL 2013-03-22 12:25:21