问一个泛型方法的问题
- C# code
public T GetDatas<T>() where T : IDatas { if(this.taskType == ETaskType.DEFAULT_TASK) { return (T)this.dds; } else { return (T)this.cds; } }
要达到这个效果该怎么写?
dds,cds等成员变量继承于 IDatas
我想根据当前类的 枚举来判断返回不同的 T.
[解决办法]
public IDatas GetDatas() {
if(this.taskType == ETaskType.DEFAULT_TASK)
{
return this.dds;
}
else
{
return this.cds;
}
}
直接返回IDatas不可以么?
[解决办法]
没看出来有使用范型的必要,直接返回就可以了
public IDatas GetDatas()
{
}
[解决办法]
[解决办法]
[解决办法]
过度设计了不是?