在多个类中处理系统范围 QSettings 的最佳方法

Posted

技术标签:

【中文标题】在多个类中处理系统范围 QSettings 的最佳方法【英文标题】:Best Way to Handle System-Wide QSettings in Multiple Classes 【发布时间】:2014-01-17 13:33:37 【问题描述】:

我有多个类都需要访问 QSettings。如果它们不存在,那么拥有一些标准化的密钥会很好。它还需要是系统范围的,这需要创建 QSettings 的实例。我当前的实现是一个所有其他类都包含的类。

int Settings::serverRefreshRate() 
    return settings->value("server/refreshRate", 10000 /* default value*/).toInt();

虽然这确实意味着在任何地方都包含这个类,但我相信这会增加开销。

把这个类放在外部是个好主意吗?静态呢?

谢谢!

【问题讨论】:

【参考方案1】:

由于您可能只有一个此类的实例,我个人会将其设为静态并使用 singleton design pattern

【讨论】:

以上是关于在多个类中处理系统范围 QSettings 的最佳方法的主要内容,如果未能解决你的问题,请参考以下文章

清理“QSettings”注册表项的最佳方法(Windows 上的 Qt 5)

在 Presto 中进行基于范围的交叉连接的最佳方法是啥?

在我的应用程序中访问 QSettings

为多个主机上的 PHP 站点处理会话的最佳方法是啥? [关闭]

在使用 JDBC 的 DAO 类中,哪一个是处理关闭 ResultSet、PreparedStatement 和 Connection 的 try-catch 的最佳方法?

保存应用程序设置(QSettings)