Как исправить «Нет перегрузки для метода» принимает 0 аргументов »?

Как я могу исправить эту ошибку?

Msgstr “Нет перегрузки для вывода метода ‘принимает 0 аргументов”.

Ошибка находится в самом низу на «fresh.output ();».

Я не знаю, что я делаю неправильно. Может кто-нибудь сказать мне, что я должен сделать, чтобы исправить код?

Вот мой код:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication_program { public class Numbers { public double one, two, three, four; public virtual void output(double o, double tw, double th, double f) { one = o; two = tw; three = th; four = f; } } public class IntegerOne : Numbers { public override void output(double o, double tw, double th, double f) { Console.WriteLine("First number is {0}, second number is {1}, and third number is {2}", one, two, three); } } public class IntegerTwo : Numbers { public override void output(double o, double tw, double th, double f) { Console.WriteLine("Fourth number is {0}", four); } } class program { static void Main(string[] args) { Numbers[] chosen = new Numbers[2]; chosen[0] = new IntegerOne(); chosen[1] = new IntegerTwo(); foreach (Numbers fresh in chosen) { fresh.output(); } Console.ReadLine(); } } } 

Он говорит вам, что метод «output» требует аргументов. Вот подпись для вывода:

 public override void output(double o, double tw, double th, double f) 

Поэтому, если вы хотите назвать это, вам нужно пройти в четырех двухместных.

 fresh.output(thing1,thing2,thing3,thing4); 

Или использовать жестко закодированные значения в качестве примера:

 fresh.output(1,2,3,4); 

Нет метода с именем output который принимает 0 аргументов, есть только один, который принимает 4 аргумента. Вы должны передать параметры output() :

 foreach (Numbers fresh in chosen) { fresh.output(o, tw, th, f); } 

Вы вызываете метод output с параметрами 0 (ноль), но вы объявили, что он получает 4 двойных значения. Компилятор не знает, что он должен назвать, поскольку нет метода output без параметра.

Все ваши реализации output метода принимают аргументы. Поставьте аргументы, и вы сможете скомпилировать их.

Как это:

 fresh.output(1, 2, 3, 4); 

fresh.output() ожидает 2 параметра, и вы не предоставляете их

  • Как написать быстрый цветной вывод на консоль?
  • Не удалось загрузить файл или сборку ... Была сделана попытка загрузить программу с неправильным форматом (System.BadImageFormatException)
  • Что происходит, когда вы закрываете консольное приложение c ++
  • Как остановить автоматическое закрытие приложений C #?
  • Какова команда выхода из приложения Console на C #?
  • Как получать уведомления устройства Plug & Play без формы windows
  • Как запустить консольное приложение .NET в фоновом режиме
  • Почему закрытие windows консоли сразу после отображения моего вывода?
  • Запустить консольное приложение из другого консольного приложения
  • Как запустить консольное приложение из Windows Service?
  • Давайте будем гением компьютера.