2010-10-18 96 views

回答

21

这意味着它是一个generic接口。

您可以创建这样一个接口:

public interface IMyInterface<T> 
{ 
    T TheThing {get; set;} 
} 

,你可以以各种方式实现:

public class MyStringClass : IMyInterface<string> 
{ 
    public string TheThing {get; set;} 
} 

像这样:

public class MyIntClass : IMyInterface<int> 
{ 
    public int TheThing {get; set;} 
} 
+0

非常感谢。是否有任何使用T的理由? – 2010-10-18 18:18:50

+0

@ eddy556:这只是一个约定 - T被用来表示“任何类型的T” - 然而,有时你会看到其他东西(即:字典等) – 2010-10-18 18:21:44

+0

'T'只是一个命名约定,因为通用参数名称引用_T_ype。你可以将它命名为或多或少,但是因为它是一个以I开始的接口命名约定,它也是一个约定,以T开头的泛型类型参数。在上面的例子中,被命名为“TTheThing”或其他类似的东西。 – 2010-10-18 18:22:16

0

这是一个参数类型意味着你可以重用IEquatable的任何类型...在“运行时”(但不完全),代替T,你可以使用字符串,动物,狗ecc ...

相关问题