我有一个类,它当前定义了一个存储多个参数列表的静态变量。
static list<shared_ptr<ParameterContainer> > _containers
不同的客户可以访问这些ParameterContainers
。
ParameterContainers
由类的构造函数创建,它接收路径作为输入,从路径中包含的XML文件中读取值,并将新ParameterContainers
存储在_containers
中。构造函数控制文件尚未存储。
客户端可以访问,修改和保存XML文件中的参数值。
变量_containers
受互斥锁保护,这保证了正确的共享访问。
我认为拥有这个参数的中央存储库是好的,它避免了每次从文件加载它。这实际上是通过静态变量_containers
实现的。
我想知道将整个类实现为单例并从变量_containters
中删除关键字static更好。
我读过几个关于单身人士可能是反模式这一事实的讨论。 在这种情况下,我想知道避免单身的一个很好的理由。