Как суммировать переменные Т в обобщенном классе? - C#
Формулировка задачи:
Компилятор пишет что невозможно применить оператор + к переменным типа Т.
Вот код,в котором должны суммироваться переменные а и б типа Т(в методе Plus).
Листинг программы
- using System;
- class A<T>
- {
- public T a;
- public T b;
- public A(T aa,T bb)
- {
- a = aa;
- b = bb;
- }
- public T Plus()
- {
- T res;
- res = a + b; //компилятор пишет невозможно применить оператор +
- return res;
- }
- }
- class Demo
- {
- static void Main()
- {
- A<int> ob = new A<int>(5, 10);
- ob.Plus();
- }
- }
Решение задачи: «Как суммировать переменные Т в обобщенном классе?»
textual
Листинг программы
- class A<T>
- {
- public T a;
- public T b;
- public A(T _a, T _b)
- {
- a = _a;
- b = _b;
- }
- public T Plus()
- {
- dynamic ta = a;
- dynamic tb = b;
- return ta + tb;
- }
- }
- //---------------------------
- static void Main(string[] args)
- {
- A<int> testInt = new A<int>(3,5);
- int resInt = testInt.Plus();
- A<int> testDouble = new A<int>(3.6, 5.8);
- double resDouble = testDouble.Plus();
- A<Random> testOther = new A<Random>(new Random(), new Random());
- var resOther = testOther.Plus(); //Вот тут будет сгенерировано исключение RuntimeBinderException
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д