РЕАКЦИЯ: Собеседование C++: 16-летний Junior Developer!
Канал в Telegram: https://t.me/mrteamlead
Поддержать развитие канала: https://boosty.to/mrteamlead
YouTube опять подкинул нам собеседование, в этот раз по C++ с шестнадцатилетним junior. Разбираем по пунктам: что кандидат отвечает про ООП (инкапсуляция, наследование, полиморфизм), чем опасны виртуальные методы для blazing fast кода, где нужен explicit, зачем noexcept, почему std::vector инвалидирует ссылки, как сделать in-place реверс строки без лишней памяти, и причём здесь std::reference_wrapper Полезные выдержки explicit душит неявные преобразования. Спасает от сюрпризов в перегрузках и вызовах функций noexcept — контракт + оптимизация (особенно для move) Виртуалки сами по себе не = cache miss; больнее indirect branch misprediction vector может реаллоцировать — все ссылки/указатели/итераторы на элементы могут протухнуть Реверс строки in-place = два указателя навстречу, O(n) времени и O(1) памяти (но помни про UTF-8) c++ собеседование, junior c++, полиморфизм c++, инкапсуляция пример, константные методы c++, explicit конструктор, noexcept что это, std::vector push_back reallocation, dangling reference, почему нельзя ссылки в векторе, reference_wrapper, reverse string inplace c++, алгоритмы на собеседовании, branch misprediction vtable, статический полиморфизм, шаблоны c++