如何制作全球课?

时间:2012-04-21 16:01:25

标签: c# oop

我有一个 Node 类,然后我在main中创建了我的树节点 像这样:

static void Main(string[] args)
{
  Node IProot = new Node("ANY-IP");           
}

即使我将通过另一个功能(设置IProot全局),我也希望能够访问此节点,例如我想拥有

public static alarm generalize(alarm one,alarm two)
{       
   //some code
}

而不是

public static alarm generalize(alarm one,alarm two,Node IProot)
{       
  //some code
}

如果这完全错了我该怎么办?

因为我无法访问IProot,所以我必须将其作为我的函数的输入,以便我可以使用IProot进行编码,但是对于我来说,将它作为输入更好。 我尝试static Node我在主要部署了IProot,但这导致了错误。我也为我的班级尝试了static class Node,但没有结果。

2 个答案:

答案 0 :(得分:2)

试试这个:

static Node IProot;

static void Main(string[] args)
{
    IProot = new Node("ANY-IP");
}

这会在应用程序的IProot方法中实例化Main对象,并允许在您的类中的方法中访问该对象的实例。

答案 1 :(得分:0)

如果generalize是一个可以应用于任何Node对象的方法,它可能应该在Node类而不是静态方法中定义,因为这是一个更多面向对象的方法。然后你可以这样称呼它:

IProot.generalize(one, two);