有没有办法在基类中实现List〈?〉?
public class DyanmoObject
{
public int PlayerId { get; set; }
public List<T> Objects
}
public class PlayerUnitDynamo : DynamoObject { }
public class PlayerBuildingDynamo : DynamoObject { }
public class PlayerBuilding
{
public int BuildingID{ get; set; }
}
public class PlayerUnit
{
public int UnitID{ get; set; }
}
public void AddItems()
{
var unitDynamo = new PlayerUnitDynamo();
unitDynamo.Objects.Add(new PlayerUnit());
var buildingDynamo = new PlayerBuildingDynamo();
buildingDynamo.Objects.Add(new PlayerBuilding());
}
3条答案
按热度按时间myss37ts1#
您的问题中没有任何内容表明您在运行时之前没有该类型。
通过将
DynamoObject
变为DynamoObject<T>
,您可以在编译时指定DynamoObject<T>
的子类。lp0sw83n2#
如果你要添加到列表中的东西真的彼此没有关系,你可以使用
List<object>
。想想它们有什么共同点。例如,也许它们在游戏中都有一个位置。你可以定义一个基类或接口来描述这种相似性,例如:
你可能会有
你就可以
wfauudbj3#
你可以使用class对象来实现:
console result