繁体   English   中英

Visual C#中的“全局变量”

[英]“Global variable” in Visual C#

我已经制作了Graph类,并且我想模拟一个分销网络。 该图工作100%。 但是,我想在所有应用程序中使用相同的结构/类! 例如:我有显示模拟的Form1,但是我想插入Nodes(例如),但是我想在Form2中做! 由于数据始终在同一类中,因此我可以使Graph实例成为全局实例,但C#不采用全局变量。 那么,我该如何解决呢? 有任何想法吗? 谢谢!

制作一个静态类。 需要全局访问的变量将其放入该类中。

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

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

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

然后,两种形式都使用同一图形。

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

让我们看一下Singleton模式,这是一种具有公共对象的可能方法:

单例模式

C#为此具有静态字段。 您可以将SIngleton模式与静态字段结合使用。 但是,不要忘记滥用应用程序范围的对象会降低您的设计水平。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM