C++: Айсберг времени жизни объектов

Habr ·

C++: Айсберг времени жизни объектов

Вам нужна эта статья, если вам не хватает знаний, чтобы ответить на эти вопросы: • Чем отличается new expression от operator new • Что такое placement new , какой у него синтаксис, и выделяет ли он память • В каких случаях и зачем нам может понадобиться вызывать деструктор вручную • Когда использовать std::launder • Почему какие-то типы можно копировать через memcpy , и ими можно сразу пользоваться, а для других это будет UB? • Что вы реально можете кастить через reinterpret_cast • Почему стандарт C++ такой запутанный и бесчеловечный Занырнуть

Вам нужна эта статья, если вам не хватает знаний, чтобы ответить на эти вопросы: • Чем отличается new expression от operator new • Что такое placement new , какой у него синтаксис, и выделяет ли он память • В каких случаях и зачем нам может понадобиться вызывать деструктор вручную • Когда использовать std::launder • Почему какие-то типы можно копировать через memcpy , и ими можно сразу пользоваться, а для других это будет UB? • Что вы реально можете кастить через reinterpret_cast • Почему стандарт C++ такой запутанный и бесчеловечный Занырнуть

Источник: Habr