Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > DYNAMIC_CAST vs dynamic_cast


Автор: Nastya 23.7.2007, 10:00
Как-то так пошли у меня философские дезайнерские вопросы. smile
Пишем на MFC. динамическое создание класов (по имени) не используем, серелизацию NFC-шную тоже
Что лучше (выгоднее, красивее и т.д.) использовать для динамического приведения типов и для проверки принадлежности нужному классу.
DYNAMIC_CAST vs dynamic_cast ?

Автор: zkv 23.7.2007, 10:08
Цитата(Nastya @  23.7.2007,  10:00 Найти цитируемый пост)
dynamic_cast

имхо, решение более позднее (те качественнее), да и стандарта С++ придерживаться стоит. 
ну и подсветка у него синяя радует  smile 

Автор: Earnest 24.7.2007, 21:04
Не говоря уж о том, что DYNAMIC_DOWNCAST работает только для наследников CObject, совершенно не приспособлен к множественному наследованию, а также не отлавливает ошибок типа: был базовый класс такой-то, было объявление DYNCREATE или DYNAMIC от него, потом базовый класс изменили, а в IMPLEMENT_DYNCREATE - забыли. В результате проверка ISKINDOF будет считать, что класс наследуется от старого типа...
Кстати, одно другому абсолютно не мешает, если нужно динамическое создание окон, никто не мешает использовать DYNCREATE и CreateObject, а приводить с помощью RTTI. Я именно так и делаю...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)