非常不言自明的问题,很高兴得到任何答案。对我来说这没有意义。我不在乎丢失信息。我只想以某种方式将所有继承 IRenderable 的列表连接到一个列表中,然后在其上调用 IRenderable 方法。我有一种感觉,这是我忘记的一些基本编程规则......
编辑:这是代码:
interface IRenderable
{
void Render();
}
interface IScreen : IRenderable
{
}
public List<IScreen> Screens = new List<IScreen>();
List<IRenderable> renderList = new List<IRenderable>();
renderList = ((List<IRenderable>)Screens; // error: cannot convert type IScreen to IRenderable
edit2:顺便说一句,我安装了 .net 4.0,但参考仍然是 System.dll 版本 2.0.5.0