Заданный класс должен содержать в себе явно определенные конструктор

Необходимо написать, отладить и сдать программу.

– Программа должна обеспечивать добавление/удаление объектов заданного класса (до 10 штук) и отображение их в окне программы;

– Заданный класс должен содержать в себе явно определенные конструктор(ы), деструктор(ы), перегруженные операции (+, –, * и др.) и дополнительные функции. При этом в окне программы должна быть отражена последовательность выполненных над объектом действий (например, вызов деструктора отображается красной точкой рядом с объектом).

– Программа должна обеспечивать интерфейс для сохранения/загрузки рабочего окна программы. При этом в файл записывается информация, необходимая для последующего восстановления из этого файла всей информации об объектах (например, для класса CPoint, объекты которого хранят 2 координаты и цвет, в файл нужно записывать/считывать тройки целых чисел – X YColor). Для этого в классе необходимо перегрузить операции << и >>.

Задача 1. Работа с объектами класса Строка.

Создайте свой класс Строка для работы со строками.

Создайте три конструктора, в качестве аргумента для которых используйте:

        указатель на строку char*

        указатель на объект класса Строка

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

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

Разместите на форме программы кнопки «Добавить», «Удалить». Пока одна из этих кнопок нажата, на изображении (Image1) можно добавлять/удалять объекты с помощью мыши.

Запрограммируйте выбор одного или нескольких (при нажатой клавише Shift) размещенных на Image1 объектов. Выбор объектов уничтожается при щелчке мышью вне области любого из объектов.

Перегрузите операцию + (в классе Строка) так, чтобы к последнему из выбранных объектов добавлялось строковое содержимое предыдущего объекта.

Создайте еще одну перегруженную функцию +, в качестве аргумента которой используется строка, завершенная ‘\0’ (char*).

Перегрузите 2 операции присваивания = для объекта, в качестве аргумента для которых используйте:

Ссылка на основную публикацию
Adblock detector