Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
2
Добавлен:
03.07.2024
Размер:
171.56 Кб
Скачать

Федеральное государственное автономное образовательное учреждение высшего образования

«ОМСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра Информатика и вычислительная техника

Лабораторная работа ООП №1

по дисциплине «Программирование»

на тему:

«Классы, объекты. Функции-члены класса в языке С++. Инкапсуляция»

Выполнил ст.гр. ИВТ-234

Шкутова А.В.

Проверила

Дорошенко М.С

Омск 2024

Задание 1

Создайте три способа работы с данными логического типа boolean:

а) традиционный с использованием препроцессора

#define TRUE 1

#define FALSE 0

#define Boolean int

б) в ANSI C и С++ c использованием перечислимых типов

enum Boolean {false, true};

в) в С++ как класс

class Boolean

{

public: // различные функции-члены, включая перегрузку ! && || == !=

};

Выделите преимущества и недостатки каждого способа. Учтите кон­текст и проблемы преобразования, а также видимость имен.

Результат:

1 способ:

Код программы:

Преимущества:

- Простота и удобство использования

- Понятность кода

Недостатки:

- Возможность конфликта с другими библиотеками, использующими те же имена TRUE и FALSE

2 способ:

Результат

Код программы:

Преимущества:

- Не сильно отличается в синтаксисе от препроцессорного способа

- Удобен для использования в ANSI C и С++

Недостатки:

- Возможность ошибки в случае неявного приведения типов

3 способ:

Код программы:

Результат:

Преимущества:

- Полная контроль типов и операций

- Специализированный класс для работы с логическими значениями

Недостатки:

- Несколько более сложный синтаксис

- Возможность необходимости явного приведения типов для сравнения

Соседние файлы в папке лабы ооп