Почему Singleton - лучший выбор, чем Global Objects

Привет переполнение стека.

Я готовлюсь к экзамену CS, который у меня завтра, и просматриваю обзорный лист, который наш профессор предоставил нам. Один из пунктов говорит о том, что Singleton - лучший выбор, чем Global.

Я не совсем уверен в рассуждениях, но я помню, как он говорил что-то о Синглтоне, используя меньше "загрязнения пространства имен". Я сделал несколько поисков в Google, сравнивая Singleton и Global, но почти все результаты показали, что оба варианта плохие. Так что это просто смутило меня больше.

Если кто-нибудь может помочь мне разобраться в этом, это будет высоко оценено. Спасибо!

1 ответ

Они ленивые:

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.
};
Другие вопросы по тегам