Re[7]: C++17: new с выравниванием - как удалять по феншую?
От: night beast СССР  
Дата: 29.12.18 10:02
Оценка: 10 (1)
Здравствуйте, uzhas, Вы писали:

V>>Если кривым механизмом ты называешь весь этот конандрум с new expression и перегружаемым оператором new, который существовал в С++ со времен CFront, то ты прав.


U>тем не менее исходный вопрос от ТС актуален, пусть даже с неудобствами, но код ведь можно написать. а то развели демагогию

U>повторю: покажите конкретный (и корректный) код освобождения объекта

стандартным способом освобождения при использовании перегруженных операторов new и delete:
явный вызов деструктора + явный вызов перегруженного оператора удаления.
как-то так:
template<typename T, typename... Args>
void release(T *ptr, Args... args)
{
   ptr->~T();
   operator delete(ptr, std::forward<Args>(args)...);
}
Отредактировано 29.12.2018 11:23 night beast . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.