我基本上要注入的擴展方法的ArrayList的每個副本,這會執行以下行爲:C#將擴展方法添加到類的實例?
ArrayList ourList = new ArrayList();
ourList.Add(randomarray or random arraylist);
它會增加給定的陣列中,數組列表的內容或堆到「ourList」,而不是數組,數組,列表或堆棧本身。
不過,我的問題是:
如何注入的擴展方法只進了實例化類? 以下代碼將該方法添加到ArrayList基類和任何實例化副本,但是我希望它只在您訪問類的實例副本時可用。
public static void Add(this ArrayList ourlist){
}
ArrayList.Add(); // Works, but shouldn't
ArrayList result = new ArrayList();
result.Add(); // Works
那麼,我該如何管理呢?
什麼是*實例副本*應該是什麼? –
總之,你不能。類型的所有方法和類型的所有擴展方法都適用於該類型的所有實例。 –
我想你的意思是實例化? (!= NULL)? –