Информация об изменениях

Сообщение Re[6]: Linus Torvalds "Nothing better than C" от 30.09.2020 18:12

Изменено 30.09.2020 18:16 AlexGin

Re[6]: Linus Torvalds "Nothing better than C"
Здравствуйте, so5team, Вы писали:

S>Он содержит, как минимум:


S>* утечку памяти, если второй new бросит исключение;


Если эти объекты в памяти занимают по 5 байт, то исключений не будет (от слова вообще).

S>* отсутствие переопределенных операторов/конструкторов копирования (даже не будем сейчас про C++11 с его move semantic).


Да, это может быть ошибкой. Но может ошибкой и не быть. Смотря какое назначение объектов данного класса.
Так, например, для головного окна приложения — конструкторы копирования и перемещения не актуальны.
Однократно создаваемый singleton объект (например контроллер протокола обмана) — также из той же оперы.

S>Ваш К.О.


Не живу догмами, и вам не советую
То, что для одного случая однозначно будет ошибкой, для другого — нормой.
Re[6]: Linus Torvalds "Nothing better than C"
Здравствуйте, so5team, Вы писали:

S>Он содержит, как минимум:


S>* утечку памяти, если второй new бросит исключение;


Если эти объекты в памяти занимают по 5 байт, то исключений не будет (от слова вообще).

S>* отсутствие переопределенных операторов/конструкторов копирования (даже не будем сейчас про C++11 с его move semantic).


Да, это может быть ошибкой. Но может ошибкой и не быть. Смотря какое назначение объектов данного класса.
Так, например, для головного окна приложения — конструкторы копирования и перемещения не актуальны.
Однократно создаваемый singleton объект (например контроллер протокола обмена) — также из той же оперы.

S>Ваш К.О.


Не живу догмами, и вам не советую
То, что для одного случая однозначно будет ошибкой, для другого — нормой.

Так, например, кто-то будет утверждать, что одна программа (или сервис) — должна выполнять только одну функцию.
Но это также сильно зависит от ситуации (а не от веры в догму UNIX-way).