Есть ответ 👍

С ++ Перегрузка операций Класс для обслуживания структур типа "Очередь с приоритетами"
Создать класс PriorQueue для работы со структурами типа "Очередь с приоритетами".
Структура типа "Очередь с приоритетами" имеет такие же свойства, как и простая очередь, но элементы ее всегда расположены в определенном порядке. Составление структуры выполняется автоматически при добавлении нового элемента. Поэтому операция pop удаляет самый большой (или маленький) элемент очереди.
Для создания объекта динамического типа и правильного его изъятия предусмотреть соответствующие конструкторы и деструкторы. Для инициализации объектов предусмотреть конструктор копирования и конструкторы с параметрами.

Создать перегружены операции:

- присвоение, символ "=";

- сравнение, символы "==", "! =";

- введение с файла, символы "<<", ">>";

- вывод в файл, символы ">>", "<<".

Предусмотреть компонентные функции:

- size - количество элементов;

- empty - возвращает значение true, если очередь пуста;

- back - ссылка на последний элемент;

- swap - обмен значениями из другой очередь;

- push - добавить новый элемент в конец очереди;

- pop - влечет самый большой (маленький) элемент;

- find - проверить, есть ли предоставленный элемент в противне;

- accumulate - накопление суммы или произведения;

- for_each - обработка элементов по предоставленной процедурой.

Разработать демонстрационно-тестирующую программу. Выполнить тестирование разработанных программных средств.

116
473
Посмотреть ответы 2

Ответы на вопрос:


ереди.

Для создания объекта динамического типа и правильного его изъятия предусмотреть соответствующие конструкторы и деструкторы. Для инициализации объектов предусмотреть конструктор копирования и конструкторы с параметрами.

Создать перегружены операции:

- присвоение, символ "=";

- сравнение, символы "==", "! =";

- введение с файла, символы "<<", ">>";

- вывод в файл, символы ">>", "<<".

Предусмотреть компонентные функции:

- size - количество элементов;

- empty - возвращает значение true, если очередь пуста;

- back - ссылка на последний элемент;

- swap - обмен значениями из другой очередь;

- push - добавить новый элемент в конец очереди;

- pop - влечет самый большой (маленький) элемент;

- find - проверить, есть ли предоставленный элемент в противне;

- accumulate - накопление суммы или произведения;

- for_each - обработка элементов по предоставленной процедурой.

Разработать демонстрационно-тестирующую программу. Выполнить тестирование разработанных программных средств.Нигде не утверждается, что объект должен быть инициализирован, и программист может забыть инициализировать его или сделать это дважды.

ООП дает возможность программисту описать функцию, явно предназначенную для инициализации объектов. Поскольку такая функция конструирует значения данного типа, она называется конструктором. Конструктор всегда имеет то же имя, что и сам класс и никогда не имеет возвращаемого значения. Когда класс имеет конструктор, все объекты этого класса будут проинициализированы.Если конструктор требует аргументы, их следует указать:date today = date(6,4,2014); // полная форма

date xmas(25,12,0); // сокращенная форма

// date my_burthday; // недопустимо, опущена инициализация

Если необходимо обеспечить несколько инициализации объектов класса, задается несколько конструкторов:

 

 

 

 

 

 

 

class date {

  int month, day, year;

public:

  date(int, int, int); // день месяц год

  date(char*); // дата в строковом представлении

  date(); // дата по умолчанию: сегодня

};

Конструкторы подчиняются тем же правилам относительно типов параметров, что и перегруженные функции. Если конструкторы существенно различаются по типам своих параметров, то компилятор при каждом использовании может выбрать правильный:

 

 

 

date july4("Февраль 27, 2014");

date guy(27, 2, 2014);

date now; // инициализируется по умолчанию

Одним из сократить количество перегруженных функций (в том числе и конструкторов) является использование значений по умолчанию.

Конструктор по умолчанию

Конструктор, не требующий параметров, называется конструктором по умолчанию. Это может быть конструктор с пустым списком параметров или конструктор, в котором все аргументы имеют значения по умолчанию.

Конструкторы могут быть перегруженными, но конструктор по умолчанию может быть только один.

 

 

 

 

 

 

 

 

class date

{

  int month, day, year;

public:

  date(int, int, int);

  date(char*);

  date(); // конструктор по умолчанию

};


скинь мне

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS