<分区>
你好堆栈溢出。
我正在准备明天的 CS 考试,我正在查看我们的教授为我们提供的复习表。其中一个要点是要知道为什么 Singleton 是比 Global 更好的选择。
我不太确定其中的原因,但我确实记得他说过一些关于 Singleton 使用较少“ namespace 污染”的事情。我做了几次谷歌搜索,比较了 Singleton 和 Global,但几乎所有的结果都说这两个都是糟糕的选择,哈哈。所以它让我不再困惑了。
如果有人能帮我解决这个问题,我将不胜感激。谢谢!
<分区>
你好堆栈溢出。
我正在准备明天的 CS 考试,我正在查看我们的教授为我们提供的复习表。其中一个要点是要知道为什么 Singleton 是比 Global 更好的选择。
我不太确定其中的原因,但我确实记得他说过一些关于 Singleton 使用较少“ namespace 污染”的事情。我做了几次谷歌搜索,比较了 Singleton 和 Global,但几乎所有的结果都说这两个都是糟糕的选择,哈哈。所以它让我不再困惑了。
如果有人能帮我解决这个问题,我将不胜感激。谢谢!
最佳答案
它们是惰性构造的:
LargeObject global; // Large object is always constructed.
class LargeObject_Singelton
{
public: static LargeObject& getInstance()
{
static LargeObject instance; // This object is not created until the first
return instance; // time getInstance() is called.
} // If you never use it this can be important.
};
关于c++ - 为什么 Singleton 是比 Global Objects 更好的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15193358/