我有以下代码:
public static T GetCar<T>() where T : ICar
{
T objCar = default(T);
if (typeof(T) == typeof(SmallCar)) {
objCar = new SmallCar("");
} else if (typeof(T) == typeof(MediumCar)) {
objCar = new MediumCar("");
} else if (typeof(T) == typeof(BigCar)) {
objCar = new BigCar("");
}
return objCar;
}
这是我得到的错误:Cannot implicitly convert type 'Test.Cars' to 'T'
我在这里想念什么?所有汽车类型都实现了 ICar 接口。
谢谢