编译器抛出CS5001代码,但我无法修复

时间:2019-12-24 14:19:23

标签: c# .net methods main

在以前的问题中我找不到解决方案。请帮忙。我想做更多的练习,并另辟run径。像现在那样运行Excercise1(),我可以不同地运行它。我需要一个功能,称为练习。我无法执行此操作,但是如果我有1个Excercise,则它也将不起作用,因为“ CS5001 C#程序不包含适用于入口点的静态“ Main”方法”。对不起,如果我的问题微不足道,对我来说不是。您可以帮我解决这个主要方法吗?

  using System;
  namespace normal
  {
    public class Program
    {
      public static void Excercise1()
         {}
//I want something like this more: 
      public static void Excercise2()
      { }
    }
  }

3 个答案:

答案 0 :(得分:0)

由于错误状态,您需要一个静态的Main方法。当您执行程序时,将调用它。这是它的切入点。

只需添加:

public static void Main(){
    // Here you want to call your exercise functions
}

答案 1 :(得分:0)

提供一个名为std::string的静态方法,或者不要将其编译为exe。

Main

答案 2 :(得分:0)

C#程序必须具有名为Main的静态方法才能生效。它具有以下签名:

private static void Main(string[] args)
{
  ...
}

因此,您的程序应如下所示:

using System;

namespace Normal
{
  public class Program
  {
    private static void Main(string[] args)
    {
      Exercise1();
      Exercise2();
    }
    public static void Excercise1()
    {
    }
    public static void Excercise2()
    {
    }
  }
}

如果没有Main静态方法,则C#编译器将不知道程序的起点在哪里。

当然,在某些情况下,您不需要程序的入口点。在开发库(DLL)时,它并不是要自己运行,而是其他代码将调用其方法。不过,在这种情况下,我认为您的目标是具有实际入口点的程序。