我試圖創建一個擴展,可以切片任何數組類(因爲在標準庫中奇怪地缺少切片)。例如:C#:擴展中的多個類型參數
public static M Slice<M,T>(this M source, int start, int end) where M : IList<T>
{
//slice code
}
但是,編譯此方法並不重視M型的對象(即使它的錯誤消息,聲稱這是它正在尋找)。它似乎相當依賴於方法本身的類型參數,例如,以某種方式,但我不完全理解事情是如何工作的。
(是的,我們可以很容易地寫,僅僅在名單工作的例子,但我很好奇,如果這甚至有可能。)
是的,對不起,我正在做一個深層複製。否則GetRange是完美的。 – Ender 2009-07-08 02:43:02