c# - 开是什么意思在通用函数中
问题描述
泛型函数中的On<T>是什么意思
public IPlatformElementConfiguration<T, AbsoluteLayout> On<T>() where T : IConfigPlatform
{
return _platformConfigurationRegistry.Value.On<T>();
}
解决方案
On
是方法的名称,T
是您在运行时定义的泛型T
类型IConfigPlatform
你应该去逛逛
泛型已添加到 C# 语言 2.0 版和公共语言运行时 (CLR)。泛型向 .NET Framework 引入了类型参数的概念,这使得设计类和方法成为可能,这些类和方法延迟一种或多种类型的规范,直到类或方法由客户端代码声明和实例化。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码可以使用的单个类,而不会产生运行时强制转换或装箱操作的成本或风险,如下所示:
一个极其简单且完全没用的泛型方法示例
public static void Method<T>(T input)
{
Console.WriteLine(typeof(T) + " : " + input);
}
public static void Main()
{
Method("Hello");
Method(234);
Method(new DateTime());
}
输出
System.String : Hello
System.Int32 : 234
System.DateTime : 1/1/0001 12:00:00 AM
推荐阅读
- android - 如何在运行时在 DropDownMenuItems 列表中添加新项目?
- wordpress - 我需要将微信公众号文章导入Wordpress帖子或博客
- r - 通过将数据帧与不同的 nrow 数据帧进行比较,有条件地对数据帧进行子集化
- reactjs - React.Children.count 还是 children.length?
- c# - 如果它有一个值,我应该如何使用可空类型
- ruby-on-rails - 作业完成后返回响应 - 延迟作业
- javascript - 多文本框,即使用javascript将textarea导出到excel
- typescript - 带有 redux 连接的 Typescript HOC
- c++ - boost::split(result, input, boost::is_any_of("(, )")) 不能分割空白空间
- docker - Docker镜像层总是已经存在