例如,我有一个基类Entity
,然后是从它派生的两个子类,LightEntity
以及PlayerEntity
.
然后我有一个List<Entity> Entities
持有LightEntity
s和PlayerEntity
s的。
我希望LightEntity
从Entities
.
我试过了:
List<LightEntity> lights = new List<LightEntity>();
foreach (Entity ent in Entities)
{
if(ent is LightEntity)
{
lights.Add(ent);
}
}
但它不喜欢这样,因为编译器似乎仍然认为它可能会尝试将一个添加Entity
到LightEntity
.
我试图转换ent
为,LightEntity
但编译器说它没有将 a 转换Entity
为 a 的方法LightEntity
。