|
|
||||||||||||||||
ООП. Динамическое приведение типа от родителя к наследнику21.08.2015, 14:12. Показов 3566. Ответов 26
Добрый день, коллеги. Проблема в следующем. Есть два библиотечных класса (xerces).
1) DOMElement Кликните здесь для просмотра всего текста
2) DOMNode Кликните здесь для просмотра всего текста
1) Почему работает в первом случае и не работает во втором? 2) Есть ли у таких вещей зависимости от компилятора? 3) Как сделать максимально грамотно? Спасибо.
0
|
||||||||||||||||
| 21.08.2015, 14:12 | |
|
Ответы с готовыми решениями:
26
Динамическое приведение типа Приведение к типу-наследнику Приведение базового класса к наследнику |
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 21.08.2015, 16:05 | |
|
HighPredator, Можно было бы попробовать проверить еще написать простенький пример, который создаст объект DOMElementImpl, присвоит указатель на него указателю на DOMNode и попробовать сделать dyn_cast к DOMElement, но я хз насколько это поможет.
1
|
|
|
|
|
| 21.08.2015, 16:15 [ТС] | |
Сообщение было отмечено Памирыч как решение
Решение
Короче, я нашел, в чем проблема. Разработчики поставляют эту либу с выключенным rtti. Поэтому касты не работают. Придется работать со статик кастами...
![]() ![]() https://issues.apache.org/jira/browse/XERCESC-819Добавлено через 30 секунд ForEveR, спасибо за помощь.
2
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 21.08.2015, 16:21 | |
|
HighPredator, Интересно... А для винды почему работает? Там с включенным RTTI? Ну да, раз так и неохота пересобирать либу с включенным rtti стоит юзать static или reinterpret.
0
|
|
|
117 / 121 / 42
Регистрация: 25.08.2012
Сообщений: 1,294
|
|
| 21.08.2015, 16:21 | |
|
HighPredator, так его можно отключить? Разве можно либу от RTTI отключить? Или они просто ее компилировали без этой опции?
0
|
|
|
|
|
| 21.08.2015, 16:28 [ТС] | |
|
tnk500, да, можно. Для xlc++ например это ключ -qnortti.
Добавлено через 2 минуты ForEveR, дело не в том, что я не хочу. Просто эта либа в том виде в котором она есть, уже много лет на боевом железе и мне никто не даст ее пересобрать. Добавлено через 1 минуту И по ходу да, виндовая версия уже имеет включенный rtti.
0
|
|
|
117 / 121 / 42
Регистрация: 25.08.2012
Сообщений: 1,294
|
|
| 21.08.2015, 16:28 | |
|
HighPredator, вот те раз, я думал его поддержка встроена наглухо. Интересно, а на кой ее вообще отключать? Её плюшки не очень требовательны, проблем с производительностью вроде не должна генерировать. Да и со старым кодом (в котором static_cast'ы и использовались) не должна проблем вызывать
0
|
|
|
|
||
| 21.08.2015, 16:31 [ТС] | ||
|
0
|
||
| 21.08.2015, 16:31 | |
|
Помогаю со студенческими работами здесь
27
Не могу вернуть подключение классу наследнику php ооп Приведение класса родителя к классу потомку java ООП - изменение переменной родителя Динамическое приведение
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений.
. . .
|
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения
Продолжаю серию постов о дискретно-событийной модели рабочего. . .
|
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы
Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
|
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция
Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
|
|
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
|
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
|
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
|
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика
Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
|