我有一個主類,有幾個繼承成員,它們都重載父類的相同Draw方法,但具有不同的Initialize方法。是否有可能爲每個繼承類使用相同的列表類型,從而能夠遍歷Draw方法?我非常肯定你可以用C++中的模板來做到這一點,但似乎無法找到在C#中使用它的方法。這裏有一個例子:如何在C#中創建通用列表/模板列表
class MainMenu : ExpandingWindow{
Init(A,B)
Draw(D)
}
class SideMenu : ExpandingWindow{
Init(A,B,C)
Draw(D)
}
我希望能夠做到:
WindowList List<ExpandingWindow>
WindowList.Add(new MainMenu)
WindowList.Add(new SideMenu)
WindowList[0].Initialize(A,B)
WindowLIst[1].Initialize(A,B,C)
和:
for each window in WindowList{
window.Draw(D)
}
我敢肯定我在這裏失去了一些東西。我不必以這種確切的方式去做,我寧願尋找處理這些情況的一般方法。
謝謝!
這似乎解決了列表問題,謝謝! –