gpt4 book ai didi

c++ - 关于单例

转载 作者:搜寻专家 更新时间:2023-10-31 00:42:00 25 4
gpt4 key购买 nike

好吧,我读到单例很糟糕,因为它们是反模式的。我还读到,这样做的主要原因是对单例的全局引用,无论如何:

总是可以避免单例吗?

如果是这样,假设我有一个 IOCP 网络,我需要对其进行一次初始化,并且该对象需要在软件的整个生命周期中保持不变。同样带有一个我称之为“绘画”的类,我将数据打印到屏幕上。如果我不使用它的单例,我仍然需要当前 Hwnd 的全局变量,并在每次我要使用它时在本地初始化对象(真的很烦人)。

那么使用单例是我的设计有缺陷的标志吗?我该怎么做才能避免它们?

谢谢。

最佳答案

is it always possible to avoid singleton?

是的,使用全局变量,或者(甚至更好)修复您的设计。修复设计的一种选择是使用某种 inversion of control .

如果您尝试使用 OO principles ,你会发现你可以不用单例。

关于c++ - 关于单例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12506940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com