这是控制台计划
情景:
我的c#代码中有很多功能,并设置为Public和Private。我当然有static int Main(string args[])
。在int Main
我调用一些函数Public和Private,并且当我调试它时就会中断该函数。它说如果main是 static 所以所有函数必须是 static ,但我的函数Public和Private中的代码必须具有“that”函数。如果我使用static int Main
更改public 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
是的,有人可以帮助我克服这个问题吗?
答案 0 :(得分:0)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Example
{
class Program
{
public void foo()
{
Console.WriteLine("This is foo in Class Program");
}
static void fooStatic()
{
Console.WriteLine("This is Static foo");
}
static void Main(string[] args)
{
Program fooInstance = new Program();
fooStatic();
fooInstance.foo();
}
}
}
这是一个小例子。静态函数是每个类一个。当您创建公共或私有函数时,它们存在于每个实例中。
编辑:
以下是我认为你要做的事情:
namespace Example
{
class Program
{
public class ClassInPublic
{
static public int Num;
static public string Sentence;
}
ClassInPublic DeclaringInstance = new ClassInPublic();
private static void Foo()
{
ClassInPublic.Num = 35;
ClassInPublic.Sentence = "Hello World";
Console.WriteLine("This Private Function! And Assign Variable Value From ClassInPublic Variable");
}
private static void Foo2()
{
Console.Write("This Single Foo didnt have any Instance Class\n");
}
public static int Main(string[] args)
{
Foo();
return 0;
}
}
}