C# 具有参数化类型的函数。评估参数化类型的方法?

C# 具有参数化类型的函数。评估参数化类型的方法?,c#,.net,C#,.net,我有一个函数声明如下: private static void func<t>(int x1, int x2) { //Some stuff that we don't care about } 但编译器似乎甚至不允许您访问函数内部的t。您只需要说 if (typeof(t) == typeof(bool)) 在你的方法中如何使用t?我认为它应该是typeoft==typeofbool。这种方法称为泛型方法。它的全部目的是不知道T到底是什么。你有点想用泛型来对抗

我有一个函数声明如下:

 private static void func<t>(int x1, int x2)
 {
      //Some stuff that we don't care about
 }
但编译器似乎甚至不允许您访问函数内部的t。

您只需要说

if (typeof(t) == typeof(bool))

在你的方法中如何使用t?我认为它应该是typeoft==typeofbool。这种方法称为泛型方法。它的全部目的是不知道T到底是什么。你有点想用泛型来对抗它。这里是编译时类型。typeoft将返回System.Type.Do yourself,并使用T而不是T作为类型参数。随着时间的推移,你的眼睛、你的头脑以及所有阅读你代码的人都会默默地感谢你。
if (typeof(t) == typeof(bool))