Делегат, как вызвать ссылку на функцию в Мейне - C#

Узнай цену своей работы

Формулировка задачи:

Пробую работу с делегатами. Немного не пойму, как с ними работать. Если пишу все в одном классе(методы static), работает. Создаю отдельный класс с методами и все - затык.
Листинг программы
  1. namespace ObjectSort
  2. {
  3. delegate double Calculation(int a, int b);
  4. class SimpleCalculator
  5. {
  6.  
  7. int Sum(int a, int b)
  8. {
  9. return a + b;
  10. }
  11. int Sub(int a, int b)
  12. {
  13. return a - b;
  14. }
  15. double Multiplication(double a, double b)
  16. {
  17. return a / b;
  18. }
  19. int Devide(int a, int b)
  20. {
  21. return a * b;
  22. }
  23. }
  24. }
Листинг программы
  1. namespace ObjectSort
  2. {
  3. class Program
  4. {
  5. delegate double Calculation(int a, int b);
  6. static void Main(string[] args)
  7. {
  8. Calculation calc = new Calculation(Sum);
  9. //SimpleCalculator calc = new SimpleCalculator();
  10. Console.ForegroundColor = ConsoleColor.Cyan;
  11. double result;
  12. result = calc.Sum(2, 6);
  13. Console.WriteLine("Сумма равна: " + result);
  14. Console.Read();
  15. }
  16. }
  17. }

Решение задачи: «Делегат, как вызвать ссылку на функцию в Мейне»

textual
Листинг программы
  1. class SimpleCalculator
  2. {
  3.     public static int Sum(int a, int b)
  4.     {
  5.         return a + b;
  6.     }
  7. }
  8.  
  9. ...
  10.  
  11. delegate int Calculation(int a, int b);
  12.  
  13. public static void Main(string[] args)
  14. {
  15.     Calculation calc = new Calculation(SimpleCalculator.Sum);
  16.     Console.WriteLine(calc(2,6));
  17. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут