【问题标题】:C# Collection class with generics [closed]具有泛型的 C# Collection 类[关闭]
【发布时间】:2015-02-05 15:59:07
【问题描述】:

我想了解如何在 C# 中使用泛型创建集合类。 我尝试做的是创建一个类,我可以在其中使用将项目添加到列表中 泛型

我已经有一些启动代码

public class CollectionClass : IEnumerable<T>
{
    private List<T> list;
    /**
    * Method:   Add
    * @param    Object item to add
    */
    public void add(T item)
    {
        List.Add(item);
    }
}

但我不能让它工作。谁能给我一些建议或帮助。

【问题讨论】:

  • 你需要把List.Add(item);改成list.Add(item);。
  • 你的类必须接受这样的泛型类型参数:public class CollectionClass&lt;T&gt; : IEnumerable&lt;T&gt;
  • Introduction to Generics 是一个很好的起点...如果您需要复制粘贴解决方案 - 搜索“implement IEnumerable”将为您提供stackoverflow.com/questions/1892768/…

标签: c# .net generics collections


【解决方案1】:

编译代码所需的三件事:

  1. 你需要在你的类中添加一个通用的T 参数

    public class CollectionClass<T> : IEnumerable<T>
    
  2. 您需要访问list 而不是List:

    public void Add(T item)
    {
       list.Add(item);
    }
    
  3. 初始化您的list 变量(可能通过构造函数):

    public CollectionClass
    {
        list = new List<T>();
    }
    

【讨论】:

  • 谢谢它的工作我忘了在 CollectionClass 之后添加泛型。
  • 还有另一个问题(我正在发布答案...)。 list 是未分配的引用。
  • @MatíasFidemraizer 你说得对,我错过了。已更新。
  • @YuvalItzchakov 没问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-01
  • 1970-01-01
  • 2018-09-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多