действительно ли возможно повторно инициализировать объект класса с помощью его конструктора?
В то время как большинство ответов повторно инициализирует объект на двух шагах; во-первых, создавая начальный объект, и второе создание другого объекта и свопинг это с первым с помощью placement new
, этот ответ покрывает случай, что Вы сначала создаете указатель на пустой объект и позже выделяете и создаете его:
class c *c_instance; // Pointer to class c
c_instance = new c(arg1, ..., argn) // Allocate memory & call the proper constructor
// Use the instance e.g. c->data
delete c_instance; // Deallocate memory & call the destructor