【发布时间】:2013-10-31 07:39:17
【问题描述】:
如何解决此错误?
“方法'输出'没有重载需要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();
}
}
}
【问题讨论】:
-
fresh.output();这里传参数,应该是 output(double o, double tw, double th, double f);
-
错误信息不清楚?
-
在此处发布问题之前,请尝试在您身边解决。
-
@User,你知道overloading是什么吗?