Операция '>' в универсальном типе - C#
Формулировка задачи:
Привет, всем.
Пишу класс матриц. Пытаюсь реализовать метод получения максимального элемента.
Он нужен в тех случаях, когда Т - это числовой тип (я так понял, он должен наследоваться от ValueType).
Есть ли способ проверять тип Т на числовой и, затем, сравнивать его объекты?
public T MaxElement () { T max = matrix[0, 0]; foreach (T x in matrix) { if (x > max) // тут, естественно, ошибка { max = x; } } }
Решение задачи: «Операция '>' в универсальном типе»
textual
Листинг программы
class Matrix<T> where T : IComparable<T> { // ... public T MaxElement () { T max = matrix[0, 0]; foreach (T x in matrix) { if (x.CompareTo(max) > 0) { max = x; } } return max; } // ... }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д