Типизированный класс System.Array - C#
Формулировка задачи:
В системе классов .NET имеется класс Array, который является предком всех массивов. Однако сам Array работает с Object. Мне же нужен базовый класс для массивов указанного типа, но разных размерностей, т.е. нужен некий класс, способный работать с int[], int[,], int[,,]... Array подходит для этого, но он использует object в качестве базового типа, что при больших массивах сильно сказывается на производительности. Где найти класс типа Array<T>, который обладая функциональностью Array, был бы типизирован?
Если перевести все это на язык кода, то требуется что-то, похожее на следующее
AnyDimensionArray<int> arr = AnyDimensionArray<int>.CreateInstance(lengths[]); arr.SetValue(12, new int[]{1,2}); // т.е. arr[1,2]=12; //arr.SetValue(int value, int index), arr.SetValue(int value, params int[] indices)
Решение задачи: «Типизированный класс System.Array»
textual
Листинг программы
Array a; int[] ai; int[,] aii; int[,,] aiii; ... ... if (a is int[,]) aii = (int[,])a; //Теперь можно работать с массивом aii aii[k,m] = ... ;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д