Универсальные шаблоны - C# (188327)
Формулировка задачи:
Добрый день, вопрос касательно универсальных шаблонов, типов. Как мне внутри моего универсального шаблона указать, что T - является ValueType? Это нужно для того чтобы можно было нормально использовать LINQ запросы, такие например как Average(). И еще, хорошо бы предусмотреть, что T может быть Int16, а LINQ с этим типом не работает.
Вот чего мне пока удалось достичь:
public void Func<T>(List<T> _data) where T : struct { if (Enum.IsDefined(typeof(TypeCode), typeof(T).Name) == false) { return; } var _max = _data.Max(); // var _average = _data.Average(); } public void f() { List<double> _data = new List<double>(); Random _random = new Random(); for (int i = 0; i < 100; i++) _data.Add(_random.Next(0, 101)); Func<double>(_data); }
Решение задачи: «Универсальные шаблоны»
textual
Листинг программы
public <T extends Number> void Func(List<T> _data)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д