c#中泛型类型的默认值[重复]

Posted

技术标签:

【中文标题】c#中泛型类型的默认值[重复]【英文标题】:default value for generic type in c# [duplicate] 【发布时间】:2010-09-27 01:36:53 【问题描述】:

Dictionary.TryGetValue 的文档说:

当该方法返回时,[value 参数] 包含与指定键关联的值,如果找到该键;否则,value 参数类型的默认值。此参数未初始化传递。

我需要在课堂上模仿这一点。 如何找到类型 T 的默认值?


如何修改此问题以使其显示在搜索中?

Returning a default value. (C#) 的完全重复

【问题讨论】:

【参考方案1】:

你正在寻找这个:

default(T);

所以:

public T Foo<T>(T Bar)

   return default(T);

【讨论】:

【参考方案2】:
default(T);

【讨论】:

是的.. 与泛型一起引入(.NET 2.0, 2005)【参考方案3】:

使用default 关键字:

T t = default(T)

【讨论】:

以上是关于c#中泛型类型的默认值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

c#中泛型集合怎样写强制类弄转换

编写高质量代码改善C#程序的157个建议——建议35:使用default为泛型类型变量指定初始值

C#语言中泛型和委托的关系是啥,Func<int>是泛型还是委托?

Java中的泛型的问题?

C#中泛型约束的具体用法

关于C#中泛型类型参数约束(where T : class)