通用委托类型声明语法

Mar*_*hal 3 .net c# delegates

非泛型委托声明如下:

delegate void Print(int arg);
Run Code Online (Sandbox Code Playgroud)

where void返回类型,int参数类型.

通用委托声明如下:

delegate void Print<T> (T arg);
Run Code Online (Sandbox Code Playgroud)

这里void又是返回类型,T括号中是通用的参数类型.

现在我们已经知道了返回类型和参数类型,那么为什么我们需要额外的类型角度括号Print<T>?它意味着什么?

谢谢大家.

Ton*_*ile 5

<T>Print<T>需要告诉你正打算创建一个通用的方法编译器.否则它可能认为T是某种类型,而不是类型参数.虽然直观地你可以推断出作者的意思,但编译器更直接地了解它.