4 / 4 / 0
Регистрация: 13.07.2009
Сообщений: 83
|
||||||
1 | ||||||
Приведение типов26.11.2010, 18:03. Показов 911. Ответов 5
Метки нет Все метки)
(
Есть задача создать список с объектами у которых разные классы, но один базовый предок.
Потом нужно перебрать список и если объект одного класса, то одно делаем с другим классом другое. Подскажите как это реализуется? Это задача для рисования объектов из списка. Базовый класс CRootClass и от него CSector и CPosition. Пока это мой неправильный вариант...
0
|
26.11.2010, 18:03 | |
Ответы с готовыми решениями:
5
Приведение типов? Приведение типов Приведение типов |
![]() 1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
26.11.2010, 18:13 | 2 |
Реализуется при помощи виртуальных функций. Создаём в базовом классе чистую виртуальную функцию и вызываем её при переборе списка. Каждому из потомков выписываем в той функции действия, которые надо произвести. За примерами - к Страуструпу, у него там тоже рисование разных фигур.
0
|
4 / 4 / 0
Регистрация: 13.07.2009
Сообщений: 83
|
|
26.11.2010, 18:28 [ТС] | 3 |
А можно не через виртуальную функции. Просто у меня не одна и та же функция будет вызываться.
Я такое на Delphi делал, там были два оператора IS и AS.
0
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
|
26.11.2010, 20:45 | 4 |
0
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
26.11.2010, 22:51 | 5 |
yava, ты уверен, что в одном массиве должны лежать объекты, с которыми приходится работать по-разному? Может, функция всё-таки одна и та же? Или, может, завести два массива?
0
|
4 / 4 / 0
Регистрация: 13.07.2009
Сообщений: 83
|
||||||
29.11.2010, 19:06 [ТС] | 6 | |||||
Тема простая, это объекты для рисование на сцене, и надо определить какой объект из массива в фокусе курсора.
Я нашел как это приводить.
Всем спасибо.
0
|
29.11.2010, 19:06 | |
Помогаю со студенческими работами здесь
6
Приведение типов. Приведение типов Приведение типов
Приведение типов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
![]() |
Новые блоги и статьи
![]() |
||||
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class - средства для работы с неизменяемыми структурами данных, каждое из которых предлагает свой уникальный подход к решению этой задачи. История их появления весьма. . .
|
Создание производительных API с Java и gRPC
Wired 04.03.2025
В разработке производительность и масштабируемость микросервисных приложений играют ключевую роль. Традиционные REST API, несмотря на свою популярность и простоту, не всегда способны обеспечить. . .
|
Что нового в JDK 24
Wired 04.03.2025
JDK 24 знаменует собой значительный скачок в развитии Java, внося фундаментальные улучшения в производительность, безопасность и удобство разработки. Релиз включает множество революционых изменений,. . .
|
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Современная блокчейн-разработка на Java предоставляет разработчикам широкий спектр возможностей. В отличие от Solidity, который ограничен экосистемой Ethereum, Java позволяет создавать как. . .
|
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
|
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
|
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
|
Tестирование Pull Request в Kubernetes с помощью vCluster
stackOverflow 03.03.2025
При работе с микросервисной архитектурой критически важно обеспечить качественное тестирование каждого изменения перед его слиянием в основную кодовую базу. Однако тестирование Pull Request в. . .
|
Использование пакета Context в Golang
bytestream 03.03.2025
Управление параллельными процессами в современных приложениях - сложная задача, особенно когда речь идет о микросервисной архитектуре и распределенных системах. Пакет context в Go - это гибкое. . .
|
WebAssembly и Go: Работа с DOM и обработка ошибок
bytestream 03.03.2025
WebAssembly представляет собой технологию, позволяющую запускать низкоуровневый код в браузере практически на нативной скорости. Особенно интересные возможности открываются при использовании. . .
|