C# 什么是<;在函数名之后?
正如问题所示,我已经进行了搜索,发现它与方法声明的泛型类型有关,我们可以在链接上找到: 例:功能(T a、T b) 在这里,我已经看到它与我们在不同类型上传递参数的时间有关 但在下面的示例中,它似乎有一个特定的类型(来自.NET),并且没有参数:C# 什么是<;在函数名之后?,c#,.net,oop,C#,.net,Oop,正如问题所示,我已经进行了搜索,发现它与方法声明的泛型类型有关,我们可以在链接上找到: 例:功能(T a、T b) 在这里,我已经看到它与我们在不同类型上传递参数的时间有关 但在下面的示例中,它似乎有一个特定的类型(来自.NET),并且没有参数: public class Program { public static void Main(string[] args) { var host = new WebHostBuilder()
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseStartup<Startup>()
.Build();
host.Run();
}
}
公共类程序
{
公共静态void Main(字符串[]args)
{
var host=new WebHostBuilder()
.UseKestrel()
.UseContentRoot(目录.GetCurrentDirectory())
.UseStartup()
.Build();
host.Run();
}
}
我们可以在那里看到。UseStartup()
这是什么原因?有两种类型,一种是采用泛型类型参数(如您所示),另一种是采用类型
参数作为常规参数的非泛型参数
在您显示的版本中,
是泛型参数,这是用于在编译时将类型作为特殊参数传递给方法的语法
非泛型重载如下所示:
/// ...
.UseStartup(typeof(Startup))
// ...
此重载允许您在运行时决定要使用的类型
,而常见的用例是在编译时使用泛型版本传递已知类型。有许多UseStartup
,其中一个采用泛型类型参数,如您所示,以及一个非泛型参数,它将类型
参数作为常规参数
在您显示的版本中,
是泛型参数,这是用于在编译时将类型作为特殊参数传递给方法的语法
非泛型重载如下所示:
/// ...
.UseStartup(typeof(Startup))
// ...
此重载允许您在运行时决定要使用的
类型
,而常见的用例是在编译时使用泛型版本传递已知类型。语法基本上是将类型(而不是值)传递给泛型方法。您的链接帖子讨论了如何声明泛型方法。你现在看到的是如何称呼它。实际上,链接的帖子也展示了如何调用它,它怎么没有回答你的问题?语法基本上是将类型(而不是值)传递给泛型方法。您的链接帖子讨论了如何声明泛型方法。你现在看到的是如何称呼它。实际上链接的帖子也展示了如何称呼它,它怎么没有回答你的问题?