多个类需要访问另一个类的同一个实例

时间:2016-08-12 13:38:35

标签: c++ qt

我正在尝试创建一个程序,其中每个表单的类都需要访问哈希表。哈希表仅在程序的整个生命周期中创建一次。我计划将哈希表的地址传递给每个类中的setter函数。在没有引入全局变量的情况下,有没有更好的方法呢?

2 个答案:

答案 0 :(得分:1)

这就是方法,但我必须说有些情况下使用全球变量就好了,你不应该害怕"过度害怕"使用它们,我的意思是资源的情况。

例如,文件系统是全局的,您不会将文件系统对象传递给您的类,而是使用全局函数,fopen,fread等访问文件系统......

打印机也一样。

应用程序数据库也是如此。

也许你的哈希表也是那种你可以访问全局的资源。

如果从多个线程访问它,最好创建应用某些同步的接入函数(信号量等)。

答案 1 :(得分:0)

尝试使用它为您提供的所有功能,以单件模式对您的哈希表进行操作。

你只需要链接到哈希表类,你就不需要它是全局的。

相关问题