我已经制作了 Graph 类,我想模拟一个分销网络。图表 100% 有效。但是,我想在我的所有应用程序中使用相同的结构/类!例如:我有显示模拟的 Form1,但我想插入节点(例如),但我想在 Form2 中进行!由于数据总是在同一个类中,我可以将我的 Graph 实例设为全局,但 C# 不采用全局变量。那么,我将如何解决这个问题?有任何想法吗?谢谢!
问问题
881 次
5 回答
5
做一个静态类。需要全局访问的变量,将它们放在该类中。
更好的想法是使用Singleton对象来表示全局可访问的对象。
于 2009-12-29T18:24:39.223 回答
4
在其构造函数中为表单提供对 Graph 的引用。
Graph g = new Graph();
Form1 f1 = new Form1(g);
Form2 f2 = new Form2(g);
然后两种形式都使用相同的图表。
于 2009-12-29T18:23:48.663 回答
2
使您的 Graph 实例成为静态类的公共静态成员,并且出于所有实际目的,您拥有全局。
于 2009-12-29T18:24:22.063 回答
2
查看 Singleton 模式,了解一种可能的拥有公共对象的方法:
于 2009-12-29T18:24:30.863 回答
0
C# 对此有静态字段。您可以将 SIngleton 模式与静态字段结合使用。但不要忘记,滥用应用程序范围的对象会降低您的设计。
于 2009-12-29T18:23:59.833 回答