Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Veyron
106 / 106 / 4
Регистрация: 02.06.2009
Сообщений: 579
#1

Организовать иерархию классов - C++

05.02.2013, 11:53. Просмотров 493. Ответов 1
Метки нет (Все метки)

В общем, ситуация такая: пишется что-то наподобие простенького движка для шариков, которые будут бегать по полю. Управление шариками пишется в пользовательском коде. То есть:

1. Есть класс World, это собственно вся среда выполнения игры.
2. В этом классе есть карта (на данный момент ее структура не важна - она может быть представлена как массив, может быть представлена как список, но типа WorldItem, о нем дальше).
3. WorldItem - универсальный элемент мира. Это будет родительский класс, от него будут наследоваться другие элементы - вкусняшки (+к здоровью, монетки...), препятствия, другие боты(UserBot).
4. Каждый человек делает свою реализацию UserBot, и в нем будет метод, который должен использовать карту мира, чтобы принять решение о очередном ходе. И тут встает проблема. Карта - элемент класса World, а доступ к ней нужно иметь из классов ботов. Передавать всю карту - будет ли накладно? Или при передаче ссылки на объект не происходит накладных расходов? Если это не оптимальный вариант, предложите, пожалуйста, на Ваш взгляд, более выгодный вариант иерархии классов с указанием места, куда же засунунть карту.

Заранее спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2013, 11:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Организовать иерархию классов (C++):

Создание java классов в коде С++ и вызов Java методов и классов из C++ - C++ WinAPI
Здравствуйте! Собственно проблема вот в чем при клмпиляции получаю ошибки Первый этап обработки исключения в "0x00000000" в...

Не могу организовать иерархию классов - C++
Всем привет! Нужен совет как правильно сделать наследование. Чтобы через указатель базового класса (Форма) можно было бы создать...

Разработать иерархию классов, демонстрирующее работу с коллекцией объектов разных классов - C++
Задание: Разработать в соответствии с индивидуальным заданием иерархию классов и приложение, демонстрирующее работу с коллекцией объектов...

Определить иерархию классов - C++
рабочий, кадры, инженер, администрация Для определения иерархии классов связать отношением наследования классы: рабочий, кадры, инженер,...

Разработать иерархию классов - C++
Разработать иерархию классов родительский абстрактный класс Vehicle с двумя чистыми виртуальными функциями и дочерним классом Car . Для...

Спроектировать иерархию классов - C++
Вот моё задание. Наследование классов Спроектировать иерархию классов На основе имеющегося базового класса (“суперкласс”) создать...

1
silent_1991
Эксперт С++
4984 / 3041 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
05.02.2013, 12:35 #2
Veyron, храните в ботах ссылку на карту (при создании объекта бота передавайте в его конструктор ссылку, которую вернёт, например, метод getMap() класса World). Для карты правильнее будет написать собственный класс Map, тогда сигнатура метода getMap будет примерно такой:
C++
1
Map& World::getMap();
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2013, 12:35
Привет! Вот еще темы с ответами:

Не получается создать иерархию классов - C++
Пытаюсь реализовать что-то вроде шаблонного метода: основная логика отрисовки лежит в базовом классе Shape (какие цвета берем, что...

Создать иерархию классов язык с++ - C++
Создать иерархию классов язык с++ Жидкость<-Напиток Жидкость<-Топливо Жидкость<-Реагент Жидкость - абстрактный класс?...

Создать иерархию классов датчик - C++
Создать иерархию классов датчик – абстрактный базовый класс и датчики температуры, влажности и скорости ветра. Для каждого класса...

Cоздать иерархию классов круг, цилиндр - C++
Класс А имеет метод для вычисления площади круга. Класс В, который является наследником А, имеет метод для вычисления полной поверхности...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru