2011-09-15 19 views
0

我有一些代碼,我總是用來製作我的對象的集合。這段代碼在我的一些項目中被替換爲10次使用。重做自定義集合以使用任何對象

有沒有什麼辦法可以將這個函數作爲一個可以接受任何對象的函數?我聽說過<T>,但我不確定如何在此使用它。

public class PageCollection : CollectionBase 
    { 
     public void Add(Page item) 
     { 
      InnerList.Add(item); 
     } 

     public void Remove(int index) 
     { 
      InnerList.RemoveAt(index); 
     } 

     public void Remove(Page item) 
     { 
      InnerList.Remove(item); 
     } 

     public Page this[int index] 
     { 
      get 
      { 
       return (Page)InnerList[index]; 
      } 
      set 
      { 
       InnerList[index] = value; 
      } 
     } 
    } 

回答

2

只需使用List<T>對象來創建對象的強類型集合。在您的示例中,僅使用

List<Page> listOfPages = new List<Page>() 

另請檢查System.Collections.Generic用於強類型(泛型)集合的名稱空間。

+0

是列表 「更好」 比我的自定義集合?有什麼好處? – janhartmann

+0

這與你的集合一樣,但唯一的區別是:你不需要爲你正在使用的每種類型創建新類型的集合,只需在'<>'中指定你的新類型,並且我們強烈地鍵入集合是免費的: )你會忘記爲你的類型創建強類型集合。 – Samich

+0

太好了。猜猜我不需要重新發明輪子:P – janhartmann

相關問題