我想实现一个返回其操作类型值的函数。我该如何做到这一点?
示例1:
static T Swap<T>(ref T lhs, ref T rhs)
{
T temp;
temp = lhs;
lhs = rhs;
rhs = temp;
return <T> temp;
}
示例2:
public override T GetRandom()
{
return (T)_random.Next(_min, _max);
}
答案 0 :(得分:7)
由于return-type和variable-type都已经T
,这只是:
return temp;
或者,施放(但这里不需要):
return (T) temp;
实际上,IMO“交换”应该void
返回!
答案 1 :(得分:0)
使这个通用没有意义:
public override T GetRandom()
{
return (T)_random.Next(_min, _max);
}
随机“T”是什么意思?假设T是“Person”类型,返回随机Person是什么意思?使用通用GetRandom方法似乎没有任何逻辑。
如果你想要一个整数,只需将int指定为返回类型。
public override int GetRandom()
{
return _random.Next(_min, _max);
}