Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
daslex
1291 / 535 / 177
Регистрация: 02.08.2011
Сообщений: 2,756
1

Синглтон Мейерса, нужны некоторые пояснения

03.01.2017, 17:18. Просмотров 228. Ответов 1
Метки нет (Все метки)

Последние следует объявлять, но не определять, так как это позволяет в случае их случайного вызова из кода получить легко обнаруживаемую ошибку компоновки
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
class Singleton{
public:
    static Singleton& init() {
        static Singleton Object;
        return Object;
    }
 
 
private:
    Singleton(){};
    Singleton operator=(const Singleton&);
    Singleton (const Singleton&){}; //<---- Я и определён, и объявлен, что это поломало?
};
Что сломалось, если я из пакости написал здесь пустое тело?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2017, 17:18
Ответы с готовыми решениями:

Нужны некоторые пояснения
При выполнении программы есть область 20 на 20. 1) Почему при движении вправо...

Нужны пояснения
Читаю &quot;С++ руководство для начинающих&quot; Герберта Шилдта. Дочитал до &quot;передача...

Нужны пояснения по вложенным классам
задался вот таким вопросом, почему не получается объявить вложенный класс...

Conversion by constructor , нужны пояснения
Здравствуйте. Смотрю я, что пишут об этом Conversion by constructor, вижу...

Реализация связанного списка - нужны пояснения
#include &lt;iostream&gt; using namespace std; class cool { public: ...

1
DrOffset
8159 / 4735 / 1159
Регистрация: 30.01.2014
Сообщений: 7,716
03.01.2017, 19:06 2
Цитата Сообщение от daslex Посмотреть сообщение
Я и определён, и объявлен, что это поломало?
Ну если были какие-то члены-данные, и синглтон внутри себя пользуется конструктором копирования (зачем - вопрос открытый), то данные скопированы не будут (вместо этого вызовутся их конструкторы по умолчанию).
Учитывая, что обычно синглтон таки никто не копирует, в том числе внутри него самого, то можно считать, что ничего тут не поломалось. Неаккуратно только выглядит. Если у нас С++11 и выше, то лучше пользоваться синтаксисом для запрета - = delete. Если C++03 и ниже, то лучше пользоваться паттерном noncopyable.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2017, 19:06

Нужны пояснения насчет компиляторов для разных ОС
Всем привет ребят! Есть несколько вопросов: 1) Существуют различные...

Нужны небольшие пояснения по маленькому фрагменту кода, реализующего рекурсивный поиск в глубину по графу
Здравствуйте, не могу разобраться в этой функции. Ниже есть ссылка на сам...

Структура "Student", нужны пояснения
Доброе время суток форум. Нужна помощь в объяснении программы. Хочу в ней...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru