LINUX.ORG.RU

История изменений

Исправление m0rph, (текущая версия) :

Это тот, у которого instance возвращает ссылку на статическую локальную переменную:

class Singleton {
public:
    static Singleton& instance()
    {
        static Singleton instance;
        return instance;
    }

private:        
    Singleton(){};
    Singleton(const Singleton&);
    Singleton& operator=(const Singleton&);
};

Исправление m0rph, :

Это тот, у которого instance возвращает ссылку на статическую локальную переменную:

class Singleton {
public:
    static Singleton& instance()
    {
        static Singleton instance;
        return instance;
    }

private:        
    Singleton(){};
    Singleton(const Singleton&);
    const Singleton& operator=(Singleton&);
};

Исходная версия m0rph, :

Это тот, у которого instance возвращает ссылку на статическую локальную переменную:

class Singleton {
public:
    static const Singleton& instance()
    {
        static Singleton instance;
        return instance;
    }

private:        
    Singleton(){};
    Singleton(const Singleton&);
    const Singleton& operator=(Singleton&);
};