4

我有一个比较大的学术模拟软件(50个班)。用户选择一个包含 20 多个项目的配置文件。这些常量变量在整个仿真平台(几乎在每个类中)都使用。模拟每秒运行数十万个代理对象几次,因此性能很重要。

目前我使用单例设置类。我使用该实例在程序启动时从文件中读取值到类中(我不想在每个其他类中添加对设置类的引用)。

1- 我最近运行了一个分析器,发现对 getInstance().getSomeSetting() 的过度调用正在影响性能。

2- 每次我谈到单例使用时,都会受到很多谴责。

在这种情况下访问设置的最佳做法是什么?我应该为这 20 多个配置项使用全局变量吗?

4

1 回答 1

0

您可以将配置对象保存在 shared_ptr 中并将其传递到您想要的任何地方,这样您将拥有一个设置对象

于 2013-03-25T06:04:06.827 回答