Visual C#中的“全局变量”

我已经制作了Graph类,我想模拟一个分发网络。 图表100%工作。 但是,我想在我的所有应用程序中使用相同的结构/类! 例如:我有Form1显示模拟,但我想插入节点(例如)但我想在Form2中执行它! 由于数据总是在同一个类中,我可以使我的Graph实例全局,但C#不接受全局变量。 那么,我该如何解决这个问题呢? 有任何想法吗? 谢谢!

在其构造函数中为表单提供对Graph的引用。

Graph g = new Graph(); Form1 f1 = new Form1(g); Form2 f2 = new Form2(g); 

然后两个表单都使用相同的图表。

创建一个静态类。 需要全局访问的变量,将它们放在该类中。

更好的想法是使用Singleton对象来表示全局可访问的对象。

使您的Graph实例成为静态类的公共静态成员,并且出于所有实际目的,您拥有全局。

看一下Singleton模式,找到一种可能的方法来获得一个共同的对象:

单身模式

C#有静态字段。 您可以将SIngleton模式与静态字段结合使用。 但不要忘记,应用程序范围内的对象的误用可能会降低您的设计。