Re[6]: Хранение в контейнере объектов разного типа
От: Tpyn666  
Дата: 01.12.11 07:51
Оценка:
Здравствуйте, johny5, Вы писали:

J>Ну как, есть куча способов это побороть:

J> 1. Отнаследовать их все от общего предка с виртуальным деструктором. Т.е. у вас Command должна быть имплементирована так, как у топикстартера.
J> 2. Контейнеры для перечисленных типов boost::variant
J> 3. Контейнеры для любых типов boost::shared_ptr, boost::any
J>Вам нужно отходить от фокусов с памятью и переходить на типобезопасное программирование.

Если честно я даже не думал в этом направление. Основной задачей для меня было только не засорять кучу.

vod* lpObj = new FooClass();
size_t sizeObj = sizeof(FooClass);

delete[sizeObj]  lpObj;


Если бы этот кусок кода точно правильно удалял объект то я бы на нем и остановился. Так как проект не очень большой и вообще VC++ использую только для связи между C# и native OpenGL.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.