我正在尝试将泛型类型参数T的值转换为整数,在确保T实际上是整数之后:
public class Test
{
void DoSomething<T>(T value)
{
var type = typeof(T);
if (type == typeof(int))
{
int x = (int)value; // Error 167 Cannot convert type 'T' to 'int'
int y = (int)(object)value; // works though boxing and unboxing
}
}
}
尽管使用装箱和拆箱机制可以实现功能,但这会增加额外的性能开销。我想知道是否有一种直接执行此操作的方法。