[英]What does it mean to put <> in code?
我是.NET C#的新手,正在阅读下面的代码:
var model = new TenantPageViewData<Tenant>(contentModel)
我不明白<MyClass>
,将<>
放在代码中是什么意思。 另外,如果您可以引导我阅读有关此问题的文档,那将很好。
这是用于为开放的泛型类型指定type参数的语法。 您可以在此处阅读有关泛型的更多信息:
http://msdn.microsoft.com/en-us/library/512aeb7t.aspx
如果您是C#的新手,一开始它似乎很复杂,但是许多语言都使用了此功能,因此花很多时间来学习它。
TenantPageViewData
公开了一个通用参数。
您将其读取为“ Tenant
的TenantPageViewData<>
”。
该类的签名如下所示:
public class TenantPageViewData<T> { }
在T
仅是一个占位符的情况下,您可以在代码中引用该代码,这些代码在编译时将变为您指定参数类型的强类型。
可以将此类定义称为“开放”泛型类型,因为尚未实现占位符T
声明var something = new TenantPageViewData<Tenant>()
是“封闭的”泛型类型,因为在该实例中,现在已知该泛型参数是Tenant
。
类型标识是TenantPageViewData<Tenant>
每个封闭的泛型类型 ,因此TenantPageViewData<Tenant>
不是TenantPageViewData<Landlord>
,并且泛型类的static
成员也对此表示敬意(这是学习泛型的常见陷阱)。
List<string>
的List<>
”的List<>
string
List<>
和可笑的Cup<T>
:-)
我相信这些类型的括号用于标记通用名称。
http://msdn.microsoft.com/en-us/library/ms379564(v=vs.80).aspx
在C#中,尖括号(<和>)最常用于包围通用类的参数。 例如,.Net框架提供了一个List类,其中“ T”表示将包含在列表中的对象的类型 。 因此,当列表创建为
List<string> myList = new List<string>();
您正在创建List类的可用的,类型安全的实例。
这里有一些很好的信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.