![]() |
|
Модераторы: Poseidon |
![]()
|
|
| zubikova |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 12.3.2010 Репутация: нет Всего: нет |
Помогите, пожалуйста, написать следующую программу:
Описать базовый класс СТРОКА. Обязательные поля класса: указатель на char — хранит адрес динамически выделенной памяти для размещения символов строки; значение типа int — хранит длину строки в байтах. Обязательные методы должны выполнять следующие действия: конструктор без параметров; конструктор, принимающий в качестве параметра Си-строку (заканчивается нулевым байтом); конструктор, принимающий в качестве параметра символ; конструктор копирования; перевод строки в верхний регистр; копирование строки; деструктор. Описать производный от СТРОКА класс ШЕСТНАДЦАТИРИЧНАЯ_СТРОКА. Строки данного класса могут содержать только символы от '0' до '9' и от 'A' до 'F'. Если в составе инициализирующей строки будут встречены любые символы, отличные от допустимых, ШЕСТНАДЦАТИРИЧНАЯ_СТРОКА принимает нулевое значение. Содержимое данных строк рассматривается как шестнадцатиричное число. Обязательные методы: конструктор без параметров; конструктор, принимающий в качестве параметра Си-строку (заканчивается нулевым байтом); конструктор копирования; деструктор; перевод в десятичное представление. Переопределить следующие операции (длина строки результата равна длине большей из строк; в случае необходимости более короткая битовая строка расширяется влево знаковым разрядом): присваивание (=); (|) — побитовое логическое ИЛИ; операция (==) — проверка на равенство. Разработчик вправе вводить любое (с обоснованием необходимости) число дополнительных полей и методов. Написать тестовую программу, которая: динамически выделяет массив указателей на базовый класс (4–6); в режиме диалога заполняет этот массив указателями на производные классы, при этом экземпляры производных классов создаются динамически с заданием начальных значений; для созданных экземпляров производных классов выполняет проверку всех разработанных методов с выводом исходных данных и результатов на дисплей. Для конструкторов копирования каждого класса предусмотреть диагностическую печать количества его вызовов в определенное место дисплея (рекомендуется использовать статические члены класса). Режим диалога обеспечивается с помощью иерархического меню. |
|||
|
||||
| susanin |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 587 Регистрация: 7.10.2006 Где: Санкт-Петербург Репутация: 3 Всего: 7 |
пример взят из книги Дейтелов.
String.h
String.cpp
main.cpp
|
||||||
|
|||||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |