|
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
|
||||||
ООП и паттерн Стратегия20.03.2019, 13:16. Показов 3905. Ответов 46
Метки нет (Все метки)
Добрый день! Помогите, пожалуйста, изучаю объектно-ориентированное программирование и паттерн Стратегия. В задаче есть два типа объектов. У них по 2 поля совпадают. А третье разное. Нужно, чтобы объекты первого типа обрабатывала стратегия 1. А второго - стратегия 2. В коде ниже создала абстрактный класс Strategy. В нем сделала функцию corr без реализации. В классе Strategy1 сделала, чтобы функция corr принимала объекты 1 типа и выводила их поля, а в классе Strategy2, чтобы функция corr принимала объекты 2 типа и выводила их поля. Почему-то компилятор считает классы Strategy1 и Strategy2 абстрактными. Видимо, потому что в corr передаются разные параметры. Хотя классы Type1 и Type2 наследники класса Type. Как можно реализовать, чтобы выбиралась стратегия в зависимости от типа?
0
|
||||||
| 20.03.2019, 13:16 | |
|
Ответы с готовыми решениями:
46
Паттерн стратегия
Паттерн стратегия и ошибки при компиляции |
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||||
| 22.03.2019, 19:01 | ||||||
|
Simply me, вот держите
1
|
||||||
|
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
|
|
| 22.03.2019, 19:04 [ТС] | |
|
Azazel-San, спасибо большое!
0
|
|
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||||
| 22.03.2019, 19:08 | ||||||
|
Simply me, доделайте мой пример, там буквально заменить
"имя_файла.расширение" на ваш реальный файл и после if (fin) добавить цикл по выводу, как-то так:
0
|
||||||
|
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
|
|
| 22.03.2019, 19:09 [ТС] | |
|
Хорошо)
0
|
|
|
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
|
||||||
| 24.03.2019, 10:35 [ТС] | ||||||
|
Azazel-San, сейчас проверила. Спасибо большое!
Всё работает! Скриншот во вложении. Здесь окончательный вариант кода.Не по теме: Пока немного не понимаю некоторые конструкции для работы с объектами stringstream:
0
|
||||||
|
Mental handicap
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
|
||||||||||||||
| 24.03.2019, 19:25 | ||||||||||||||
noexcept, - т.е. этот оператор говорит, что ф-я не будет бросать исключений (которые например может бросить обычный new), а если бросит тогда наша программа сразу же упадет в std::terminate, таким образом нам надо сделать так что бы new не бросал исключений, где конструкция new(std::nothrow) это и делает, т.е. исключение в случае неудачи брошено не будет, а просто вернется nullptr указатель.З.ы. - сейчас увидел что она у меня на самом деле не noexcept ![]() struct, тогда как минимум не придется писать лишний раз public.При переопределении виртуальных методов в наследнике лучше писать так:
createStream, мы делаем тоже самое.Как-то так.
1
|
||||||||||||||
|
244 / 37 / 8
Регистрация: 05.05.2012
Сообщений: 521
|
|||||||||
| 24.03.2019, 20:02 [ТС] | |||||||||
|
Спасибо за объяснения!) Исправлю замечания)
0
|
|||||||||
| 24.03.2019, 20:02 | |
|
Сделать выбор персонажа игры, вывод его скилов и предметов, используя паттерн стратегия
Стратегия выборки Пошаговая стратегия (начало) Пошаговая стратегия(начало) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|