在C#中调用尖括号部分是什么,例如SomeMethodName <isomething>()

时间:2017-11-16 04:32:11

标签: c# terminology

在C#中给出以下内容:

public Complex SomeMethodName<ISomething>(int x, int y, ....)

我们可以按如下方式描述每个部分:

public : accessor specifier
Complex : the resut of the function
SomeMethodName : Method Name
<ISomething> : ???
(int x, int y, ....) : parameter list 

我的问题是<ISomething> Part的名称是什么?

PS:我知道尖括号的名称,但那部分意味着什么?方法的普遍性?

更新:例如 我们会读

public Complex SomeMethodName(int x, int y, ....)

作为公共方法SomeMethodName返回Complex作为结果并获取参数int x,int y,...

我们应该阅读

public Complex SomeMethodName<ISomething>(int x, int y, ....)

作为公共方法SomeMethodName的泛型类型ISomething返回Complex作为结果并获取参数int x,int y,...?

3 个答案:

答案 0 :(得分:3)

答案 1 :(得分:0)

  

我的问题是Part的名称是什么?

是泛型方法的类型参数。

例如:

static void Swap<T>(ref T lhs, ref T rhs)
{
    T temp;
    temp = lhs;
    lhs = rhs;
    rhs = temp;
}

调用上面定义的方法并替换为所需类型:

public static void TestSwap()
{
    int a = 1;
    int b = 2;

    Swap<int>(ref a, ref b);
    System.Console.WriteLine(a + " " + b);
}

所以在上面的Swap<int>中,我们传递的是类型参数 int

这个Link解释了泛型方法。

答案 2 :(得分:-3)

模板类型。 模板类型名称。 模板参数。 模板参数。