Вопросы к Поиску с Алисой
Основное отличие placement new от стандартного new в языке программирования C++ заключается в способе выделения памяти. ru.wikipedia.org webhamster.ru
Стандартный new пытается выделить достаточно памяти в куче для размещения новых данных и в случае успеха возвращает адрес выделенного участка памяти. ru.wikipedia.org Если выделение невозможно, оператор передаёт исключение типа std::bad_alloc. ru.wikipedia.org
Placement new не выделяет память, а получает своим аргументом адрес на уже выделенную каким-либо образом память (например, на стеке или через malloc()). ru.wikipedia.org Затем происходит размещение (инициализация) объекта путём вызова конструктора, и объект создаётся в памяти по указанному адресу. ru.wikipedia.org
Некоторые преимущества использования placement new:
Часто placement new применяют, когда у класса нет конструктора по умолчанию и при этом нужно создать массив объектов. ru.wikipedia.org