1 / 1 / 0
Регистрация: 19.05.2019
Сообщений: 20
|
||||||
1 | ||||||
Как сделать грамотно вывод очереди в с++17.12.2022, 18:51. Показов 999. Ответов 2
Нужно реализовать вывод по приоритету, всё в принципе понятно. Проблема в том что я не знаю как выводить эту очередь. Не знаю как сделать для вектора оператор вывода.. И так не могу найти статью как работать с векторами классов так тут ещё и очередь..
![]()
0
|
17.12.2022, 18:51 | |
Ответы с готовыми решениями:
2
Как грамотно сделать вывод графики в оконном приложении? Как сделать вывод элементов массива по очереди Как грамотно сделать псевдоним? |
16 / 12 / 4
Регистрация: 01.05.2023
Сообщений: 14
|
||||||||||||||||
02.05.2023, 11:09 | 2 | |||||||||||||||
std::queue::pop() не возвращает значение:
А вот что вам нужно, так это пересмотреть выбор структуры данных. printMonsters() - функция, которая выводит всех монстров, одновременно их всех удаляя. Предположу, что задача стояла просто вывести. Тогда, можно сделать так:
operator<< , как это было сделано с монстрами выше?
1) методы, не изменяющие сам объект при своём выполнении, лучше обозначать const: int Get_Health() const { ... } ;2) передачу структуры выполнять через константную ссылку, если вы не собираетесь менять то, что вам дала вызывающая сторона: friend ostream& operator<<(ostream& out, const Monster& name) (name меняться не будет, поэтому передаём константную ссылку - const TypeName&);3) поизучайте стандартные STL контейнеры - их много, и каждый из них имеет свои преимущества и недостатки в разных ситуациях: vector, list, forward_list, map, multimap, set и так далее; 4) старайтесь придерживаться единого стиля именования переменных/методов/функций. У вас в Monster есть поле monster с маленькой буквы, и поле Health с заглавной. Так-же, у вас есть метод Get_Monster с разделением в виде нижнего подчёркивания, и AddM без такового. Если у вас нет каких-либо предпочтений в этом вопросе, рекомендую использовать snake_case (все буквы малые, слова разделяются нижним подчёркиванием) для переменных, полей, функций и методов; PascalCase для имён типов (классы, using) и SCREAM_CASE для директив #define это, как раз таки, не понятно. Что за приоритет? Когда был добавлен? Если да, замените в функции Battle::AddM monsters.push_front(monster); на monsters.push_back(monster);
1
|
1 / 1 / 0
Регистрация: 19.05.2019
Сообщений: 20
|
|
02.05.2023, 15:05 [ТС] | 3 |
Больше спасибо за ответ! Я более мене разобрался тогда, но вы дали новую пищу для размышлений. Хорошего дня!
0
|
02.05.2023, 15:05 | |
Помогаю со студенческими работами здесь
3
Реализации кода через очереди(Не понимаю как сделать код через очереди) Объясните как грамотно сделать цикл Как грамотно сделать рамку в дипломе Фоновая картинка - как грамотно сделать? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Введение в Dapr для разработчиков .NET
UnmanagedCoder 18.03.2025
Разработка распределенных систем никогда не была настолько востребованной и одновременно такой сложной. Если вы . NET разработчик, то наверняка сталкивались с необходимостью жонглировать обнаружением. . .
|
Собеседование по Spring Boot: продвинутые вопросы и ответы
Javaican 18.03.2025
Собеседования на позиции старших разработчиков и архитекторов требуют глубокого понимания внутренних механизмов Spring Boot, нюансов конфигурирования, подходов к оптимизации и построению сложных. . .
|
Перечисления в TypeScript: использование и лучшие практики
run.dev 18.03.2025
Пишете код и устали от разбросанных по проекту "волшебных" строк и чисел? Знакомая ситуация: где-то в глубине кода притаилась строка "ADMIN", а в другом месте используется "admin". И вот уже. . .
|
Фишки Kotlin, которые все любят
Javaican 18.03.2025
Помню, как скептически относился к появлению "ещё одного языка для JVM" — мол, зачем нам что-то новое, когда есть Java? Но первый же проект на Kotlin заставил меня пересмотреть свое мнение. Код стал. . .
|
Списки и кортежи в Python: различия, особенности, применение
py-thonny 18.03.2025
Если вы когда-нибудь писали код на Python, то наверняка сталкивались с конструкциями вида или ('имя', 25, 'инженер'). Это и есть списки и кортежи — последовательности, хранящие упорядоченные наборы. . .
|
Интеграция JavaScript в Haskell
golander 18.03.2025
Ключевая особенность нового JS-бэкенда GHC — возможность создавать колбэки из JavaScript в Haskell-код. Это открывает дорогу разработке полноценных браузерных приложений, позволяя реагировать на. . .
|
Циклы for в Python
py-thonny 17.03.2025
Существует множество ситуаций, когда нам нужно выполнить одно и то же действие несколько раз. Цикл for в Python — настоящий рабочий конь для большинства программистов. Если вам нужно пройтись по всем. . .
|
Предсказание ветвлений - путь к высокопроизводительному C++
NullReferenced 17.03.2025
В высокопроизводительном программировании на C++ каждый такт процессора на счету. Когда речь заходит о разработке систем с низкой задержкой — будь то высокочастотная торговля, обработка потоковых. . .
|
Паттерн CQRS в C#
UnmanagedCoder 17.03.2025
Создание сложных корпоративных приложений часто требует нестандартных подходов к архитектуре. Один из таких подходов — паттерн CQRS (Command Query Responsibility Segregation), предлагающий простую,. . .
|
Паттерн Цепочка ответственности в C#
UnmanagedCoder 17.03.2025
Цепочка ответственности — это поведенческий паттерн проектирования, который позволяет передавать запросы последовательно по цепочке потенциальных обработчиков, пока один из них не обработает запрос. . . .
|