我习惯于脚本语言。 PHP、Javascript 等,我编写了一些相对简单的 Java 和 C# 应用程序。这是一个我一再需要答案的问题,我想我不是唯一一个。
假设我使用 Javascript。
我有函数 A(),由 GUI 调用,它检索一些值。
函数 B(),也由 GUI 调用,需要该值,但函数 B() 将在 A() 之后被调用任意次数,任意时间长度。
我不希望 A() 每次都重新计算值。
一个例子是登录凭证。 A() 要求输入用户名,B() 每次调用时都使用该值附加到日志。
为此,我可能只使用一个全局变量。
现在,C#。没有全局变量!我应该怎么做?
编辑: 享受答案,但有很多“尽量不要使用全局变量”的评论。我明白这一点,但我想听听满足此要求的替代模式。
最佳答案
这不是一个好的做法,但如果你真的需要它,有很多方法:
- Web 应用程序:您可以将变量放在某种上下文中,例如 session 或应用程序范围。
- 桌面应用程序:您可以创建一个对象并将其存储为始终有一个对象处于事件状态的类的属性。
- 任何类型的应用:使用公共(public)静态属性。每个人都可以看到。
关于c# - 如何在没有全局变量的情况下持久化数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/895595/