创建泛型类型的实例?如果BaseFruit有一个接受一个的构造函数,int weight我可以用这样的泛型方法实例化一块水果吗?public void AddFruit<T>()where T: BaseFruit{
BaseFruit fruit = new T(weight); /*new Apple(150);*/
fruit.Enlist(fruitManager);}注释后面添加了一个示例。如果我给出BaseFruit一个无参数构造函数然后通过成员变量填充所有内容,我似乎只能这样做。在我的真实代码中(不是关于水果),这是不切实际的。-Update-所以它似乎无法以任何方式通过约束来解决。从答案中有三种候选解决方案:工厂模式反射活化剂我倾向于认为反射是最不干净的,但我不能在其他两个之间做出决定。
- 3 回答
- 0 关注
- 485 浏览
添加回答
举报
0/150
提交
取消