Практичне завдання № 18

Перегрузите оператор + относительно класса coord так, чтобы он был как бинарным, так и унарным оператором. При использовании в качестве унарного оператор + должен делать положительным значение любой отрицательной координаты.

class coord {

int x, у; // значения координат

public:

добавьте

конструктор инициализации;

конструктор копирования

функцию перегрузки бинарного оператора +

функцию перегрузки унарного оператора +

 

функция вывода информации

 

Создайте для него конструктор инициализации, конструктор копирования, функцию перегрузки оператора +, функцию вывода.

Создать объект c1 даного класа. На основе его создать объект c2. Вывести на экран эти два объекта. Применить перегрузку бинарного оператора+ и унарного оператора +

Результати вывести на экран (189)

ПРАКТИЧНЕ ЗАВДАННЯ № 19

Створити абстрактний тип даних - клас "вектор", що містить покажчик на int, число елементів і змінну стану.

Визначити конструктор без параметрів, конструктор з одним параметром, конструктор із двома параметрами. Конструктор без параметрів виділяє місце для одного елемента та ініціалізує його в нуль. Конструктор з одним параметром (розмір вектора) виділяє місце та ініціалізує нулями, конструктор із двома параметрами виділяє місце (перший аргумент) та ініціалізує другим аргументом. Деструктор звільняє пам'ять. Визначити функцію, яка присвоює елементу масиву деяке значення (параметр за замовчуванням), функцію яка повертає деякий елемент масиву. У змінну стану встановлювати код помилки, якщо не вистачає пам'яті або відбувається вихід за межі масиву. Визначити функцію друку. Визначити функції додавання, множення, віднімання, які виконують ці арифметичні операції з даними класу. Визначити методи порівняння: більше, менше, дорівнює. Перевірити роботу класу.

...

ПРАКТИЧНЕ ЗАВДАННЯ №20

Спроектувати клас "Динамічний рядок" на основі типу даних char. Клас містить вказівник на рядок та розмірність.Визначити конс­труктор за замовчуванням, який створює рядок нульової довжини, конструктор з одним параметром, конструктор копіювання.

Визначити віртуальну функцію повернення елементу рядка із заданим індексом. Перевантажити оператор додавання для здійснення конкатенації рядків. Породити від даного класу клас "Динамічний контейнер рядків". Перевизначити віртуальну функцію повернення елемента заданого рядка із заданим номером.

ПРАКТИЧНЕ ЗАВДАННЯ № 21

У програмі створюється вихідний базовий клас Area, в якому зберігаються дві розмірності фігури. У ньому також оголошується віртуальна функція getare (), яка, при її визначенні у похідних класах, повертає площу фігури, вид якої задається в похідному класі. У цьому випадку визначення функції GetArea () у середині базового класу задає інтерфейс.
Конкретна реалізація залишається тим класам, які успадковують клас Area.У цьому прикладі розраховується площа трикутника і прямокутника.

 

 

ПРАКТИЧНЕ ЗАВДАННЯ № 22


Створити клас студент, що має ім'я (покажчик на рядок), курс та ідентифікаційний номер. Визначити конструктори за замовчуванням і з різним числом параметрів, деструктор і віртуальну функцію друку Show(),яка перевизначається у похідних класах.

Створити похідні класи: студент-дипломник, що має тему диплома та студент- заочник, який має місце розподілу на практику Перевизначити віртуальну функцію друку Show(),


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: