需要帮助做过载

时间:2014-10-22 01:01:12

标签: c#

我收到一个错误:错误无效的令牌'('在类,结构或接口成员声明中)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Assignment11
{
  class Dog
  {
    public void bark()
    {
      Console.WriteLine("Empty method");
    }
    public void bark(string args);

    Console.WriteLine("fido is Barking");
  }

  class Program
  {
    static void Main(string[] args)
    {
      Dog fido = new Dog();
      fido.bark();
      fido.bark ("fido");
      Console.Write("Hit any key to close"); Console.ReadKey(true);
    }
  }
}

我收到一个错误:错误无效的令牌'('在类,结构或接口成员声明中)感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

错误说明了一切。 Dog类有一个名为bark的方法,它不带任何参数。

您无法拨打fido.bark("Fido");,但您没有bark(string)方法。

你可能会有这样的事情,看看带有评论的样本。

class Dog
{
    // signature without arguments
    public void bark()
    {
        Console.WriteLine("Empty method");
    }

    // other signature for the method, which takes a string argument
    public void bark(string arg)
    {
        Console.WriteLine("Bark {0}", arg);
    }
}

答案 1 :(得分:0)

public void bark(string bark)

应该在dog类中,因为你在狗对象(fido)上调用bark,而不是程序对象

答案 2 :(得分:0)

尝试将第二种树皮方法设置为其他名称

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Assignment11
{ 
    class Dog
    {
       public void bark()
       {
           Console.WriteLine("Empty method");
       }

       public void bark2(string args);

           Console.WriteLine("fido is Barking");
       }

  class Program
 {
      static void Main(string[] args)
      {
          Dog fido = new Dog();
          fido.bark();
          fido.bark2 ("fido");
          Console.Write("Hit any key to close"); 
          Console.ReadKey(true);
       }
  }
}