【发布时间】:2014-01-11 22:51:27
【问题描述】:
这是一个控制台程序
场景:
我的 c# 代码中有很多函数,并且设置为 Public 和 Private。我当然有static int Main(string args[])。在int Main 中,我调用了一些函数Public 和Private,当我调试它时就会中断函数。它说如果 main 是 static 那么所有函数都必须是 static,但我在函数 Public 和 Private 中的代码必须具有“那个”函数。如果我用我的public int main 更改static int Main,则无法进行调试,因为int Main 必须是静态的。
首先我要说我真的很抱歉提出了一个难以理解的问题
如果这让我对我的场景感到困惑,请在此处查看我的示例代码
namespace Example
{
class Program
{
public class ClassInPublic
{
public int Num;
public string Sentence;
}
ClassInPublic DeclaringInstance = new ClassInPublic();
private void Foo()
{
DeclaringInstance.Num = 35;
DeclaringInstance.Sentence = "Hello World";
Console.Write("This Private Function! And Assign Variable Value From ClassInPublic Variable");
}
private void Foo2()
{
Console.Write("This Single Foo didnt have any Instance Class");
}
static int Main(string args[])
{
Foo();
}
}
}
这就是我的情况
在其他人的帮助下,我已经构建了这个
namespace Example
{
class Program
{
public static class ClassInPublic
{
public int Num;
public string Sentence;
}
ClassInPublic DeclaringInstance = new ClassInPublic();
private static void Foo()
{
DeclaringInstance.Num = 35;
DeclaringInstance.Sentence = "Hello World";
Console.Write("This Private Function! And Assign Variable Value From ClassInPublic Variable");
}
private static void Foo2()
{
Console.Write("This Single Foo didnt have any Instance Class");
}
public static int Main(string args[])
{
Foo();
}
}
}
错误标志现在较低,其余为 ClassInPublic
它说我不能声明
cannot declare instance members in static class
有人可以帮我解决这个问题吗?
【问题讨论】:
-
您需要了解
static的含义。请参阅文档。 -
你的问题很不清楚。请显示一些实际代码并突出显示错误报告的位置,以便我们了解问题。
-
嗯,我很难解释这个解决方案,因为它更像是一个课堂问题。但是,如果我建议你养成一个习惯,那就是永远不要在编写静态 main 的地方编写函数。只需创建一个类并在那里定义所有功能,然后在 main 中调用该类对象。只是为了养成好习惯。
-
你怎么会在课程范围之外拥有
private或public? main 不能引用这些函数 - 它可以创建您的类的实例,并在其上调用公共函数。
标签: c# console-application main