Конструкторы и деструкторы: Несколько вещей, которые вы, возможно, захотите узнать

RU / День 1 / 12:30 / Зал 2

Кажется, что в C++ нет ничего проще, чем конструктор и деструктор. Но и здесь есть несколько интересных вещей, которые могут сделать вашу жизнь лучше, если вы знаете о них и держите их в уме, когда пишете код.

В докладе, в рамках объединяющей темы конструкторов и деструкторов, рассмотрим как некоторые трюки и ловушки при кодировании, так и более широкие темы, такие как дизайн типов.

Например, какая разница между приватно объявленным и deleted конструктором? (Спойлер: никакой.)

Также обсудим:

  • правила 0/3/5 (куда без них);
  • constexpr конструкторы;
  • explicit и strong typing;
  • копирование/перемещение и эквивалентность;
  • деструкторы теперь noexcept по умолчанию и когда деструкторы всё же могут бросать исключения;
  • виртуальные деструкторы и полиморфизм;
  • и ещё несколько вещей.