Re[4]: Копирование виртуального объекта?
От: johny5 Новая Зеландия
Дата: 17.01.15 09:34
Оценка:
Здравствуйте, night beast, Вы писали:

Вообще, раз уж на то пошло и вся фишка тут в копировании, чтобы копировать объект динамического размера в С++ используется такой интерфейсик:

struct ICloneable
{
  ICloneable* Clone() = 0;
}

class A : ICloneable
{...};


Дальше думаю понятно. Имея указатель на базовый класс всегда можно сделать полную копию его истинного рантайм класса.
Конечно тут потребуется немного макросомагии, чтобы вставлять обязательный boilerplate код в каждый из классов наследников.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.