изучить работу со статическими и константными членами класса.
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)
Служба поддержки
Возникли вопросы? Появились проблемы с автором? Не стесняйтесь, мы поможем!
Помощь в подборе материалов для написания работы
Обратная связь
Загрузка...
Предупреждение
Не сообщайте контакты без крайней необходимости. Ни в коем случае не совершайте прямые переводы денежных средств вне биржи "Пишем24". Общение и заказы за пределами "Пишем24" несут высокий риск мошенничества. А внутри "Пишем24" - проходят гладко и безопасно. В случае первого обмена контактами от администрации выдается предупреждение. В случае второго обмена контактами аккаунт пользователя блокируется.