学习泛型的好资源有哪些?

3

有谁能帮我指导如何入门以及需要学习哪些对于集合(非泛型)和泛型来说至关重要的知识?

3个回答

3

简单来说:常规集合存储对象。系统不知道存储的是什么类型的对象,因此在使用它们时必须将其转换为所需的类型。泛型集合在创建时声明正在放入哪种对象。然后您总是知道那里有什么。这就像对象数组和字符串数组之间的区别。

我肯定会查看PK发布的页面上的链接列表,以更全面地了解。


3

我还推荐以下这本书,它几乎涵盖了你在.NET 2.0及以上版本中想要了解的所有关于泛型的细节,包括泛型类、方法、委托和约束条件,以及它们与C++模板的区别和BCL中的泛型。


2

1)可以使用泛型定义类。

 public class MyClass<TClass>

2) 可以使用以下语法限制类型。

where TClass: struct

3) 方法也可以具有通用类型。

public TMethod ConvertTo<TMethod>()

4) 完整示例

public class MyClass<TClass> where TClass: struct
{
    private TClass _Instance;

    public MyClass(TClass instance)
    {
        _Instance = instance;
    }

    public TMethod ConvertTo<TMethod>()
    {
        return (TMethod)Convert.ChangeType(_Instance, typeof(TMethod));
    }
}

这是一个很好的开始泛型的例子,但是应该鼓励重新发明轮子吗?毕竟已经有那么多解释了。 - Yuriy Faktorovich

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接