我正在编写一个应用程序,需要在应用程序运行时存储程序设置(输入目录、输出目录等)。我想让程序能够加载和使用(基于选项)生产环境和测试环境。
我会像这样设置结构:
Class AppSettings
{
struct prodAppSettings
{
var settingName;
var settingName2;
var settingName3;
}
struct testAppSettings
{
var settingName;
var settingName2;
var settingName3;
}
}
然后,我会在我的主类中,根据用户需要的环境选项加载适当的设置。
AppSettings 类将处理设置的加载(应用程序将与用于设置的 Web 服务交互,或者在网络连接不可用时,它可以使用存储最后已知良好设置的 XML 文件)。我不太熟悉结构,但我想熟悉它们,所以这个项目可能是做这件事的好地方。
编辑
澄清了几件事。
最佳答案
不,基本上。使用类
。您需要使用 struct
的次数消失很少(除非您是为 XNA 等编写的)——而且这不是一次他们中的。如果您在这里使用 struct
,您可能会遇到至少两个问题:
- 在堆栈上传递一个真的大的
struct
(而不仅仅是一个引用) - 丢失了对
struct
内部副本的更新
很可能是第三个(撕裂值,通过多线程代码)
关于c# - struct 是将程序设置存储在内存中的好方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20859832/