我想定義一個接受數組作爲參數的方法,但是這個數組可能是任何級別的。排名將由一個單獨的參數指定。東西來取代/概括如下:C#:有沒有一種方法來定義未知排名的方法數組參數?
// one dimensional array
public void WorkOnJaggedArray<T>(int rank, int[] dimensions, T[] data)
{
/* code */
}
// two dimensional array
public void WorkOnJaggedArray<T>(int rank, int[] dimensions, T[][] data)
{
/* code */
}
// three dimensional array
public void WorkOnJaggedArray<T>(int rank, int[] dimensions, T[][][] data)
{
/* code */
}
// and so on...
考慮到我有秩,並通過在每個維度的大小,我應該能概括我的方法中的代碼。有沒有一種很好的方式來實現我所要求的?
不幸的是,沒有。我在這裏簡化了我的問題,但這將成爲更大的API的一部分,需要像這樣傳遞「數據」。 – mbadawi23
我很困惑。你爲什麼不使用'params'? – Eris
我不清楚在這裏如何使用params來解決我的問題。該方法的調用者需要發送一個*參差不齊的數組*而不是一個可變的參數列表。 – mbadawi23