Завершенные
#33200

Лабораторная работа на тему «Статические, константные и дружественные члены класса»

Похожие заявки
Лабораторная, Безопасность жизнедеятельности
Бюджет: 1000 руб.
Контрольная работа, Другое
Бюджет: По договоренности
Лабораторная, Математика
Бюджет: 3000 руб.
Создан:
19 февраля 2023
Срок сдачи:
30 ноября -0001
Бюджет:
400 руб.
Предмет:
Другое
Тип работы:
Лабораторная
Вуз:
Объем:
от 1 до 3 стр.
Шрифт:
Интервал:
Оригинальность:
%
Описание:
Цели:

изучить работу со статическими и константными членами класса.

1. Краткие теоретические сведения

Статические члены класса

Каждый объект одного и того же класса имеет собственную копию данных класса. Но существуют задачи, когда данные должны быть компонентами класса, и иметь их нужно только в единственном числе. Такие компоненты должны быть определены в классе как статические (static). Статические данные классов не дублируются при создании объектов, т.е. каждый статический компонент существует в единственном экземпляре.

2. Практическое задание (100%)

Для задания практической работы 6 «Перегрузка операций» выполнить доработку программы в соответствии с заданиями:

ЗАДАНИЕ 1. Статические члены-данные класса

1. Добавить статическое поле int сount, выступающее в роли счетчика объектов класса.

2. Деструктор класса должен уменьшать на единицу значение счетчика.

3. Добавить статический метод int getCount() возвращающий значение счетчика.

4. Продемонстрировать изменение значения статического поля.

ЗАДАНИЕ 2. Константные методы и объекты

1. Определить какие методы являются константными, определить константные параметры и константные возвращаемые значения методов.

2. Добавить константное поле, хранящее идентификатор объекта (номер созданного объекта), предусмотреть методы вывода информации о идентификаторе.

3. Описать и инициализировать обычные и константные объекты.

4. Выполнить вызовы обычных и константных методов для каждого вида объектов.

5. Провести тестирование программы: Откомпилировать программу. Имеются ли ошибки компиляции и какие? Если имеются, то закомментировать соответствующие строки кода и вновь провести компиляцию. Какие предупреждения выдает компилятор и в чем их смысл? Как их можно объяснить с позиции обеспечения надежности программы?

4. Контрольные вопросы

1. Константный метод, вызываемый для объекта класса

а) может изменить как константные, так и неконстантные поля

б) может изменить только неконстантные поля

в) может изменять только константные поля

г) не может изменять никакие поля

2. Для чего нужно объявление поля класса со словом mutable

3. Какие свойства приобретает поле данных класса, объявленное как static

4. В чем состоит преимущество определения конструктора со списком инициализации элементов?

5. Какие свойства приобретает элемент-функция класса, если она объявлена как статическая

6. Что такое указатель this?
Закажите подобную или любую другую работу недорого
или
Предложения (0)