Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dimon22-99
0 / 0 / 0
Регистрация: 29.05.2012
Сообщений: 11
#1

Абстрактный класс object - C++

05.01.2013, 19:10. Просмотров 1165. Ответов 8
Метки нет (Все метки)

Здравствуйте, у меня такой вопрос: кто-ни будь может мне разъяснить следующее задание и помочь его сделать?
Задание: необходимо разработать интерфейс для объединения в структуру множества объектов различных классов - абстрактный базовый класс объектов object, для которого предусмотреть виртуальные методы загрузки объекта из текстовой строки, выгрузки объекта в текстовую строку в динамической памяти, добавления объекта в последовательный двоичный файл, чтение объекта из последовательного двоичного файла, возврата уникального идентификатора класса, возврата указателя на строку с именем класса, сравнения двух объектов, создание динамической копии объекта. Сделать классы хранимых объектов производными от абстрактного класса object.

Коллекция представляет собой структуру данных, хранящую указатели на объекты произвольного типа - объекты базового класса. Программа должна обеспечивать просмотр коллекции, добавление объекта, выбранного типа, редактирование и удаление объекта, сложение и сравнение объектов при условии совпадения типов с помещением результата в ту же коллекцию, сохранение и загрузку объектов из текстового (или двоичного) файла. Структура данных для организации коллекции: односвязный список.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2013, 19:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Абстрактный класс object (C++):

Класс: Создать абстрактный базовый класс Figure с виртуальными методами вычисления площади и периметра. - C++
Создать абстрактный базовый класс Figure с виртуальными методами вычисления площади и периметра. Создать производные классы: Rectangle...

Абстрактный класс, наследование, класс хранится в другом классе - C++
Нужна помощь. Написать программу: 1 класс. Имеется абстрактный класс который описывает какую-то сущность, например Человек. В абстрактном...

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями - C++
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать абстрактный базовый класс Тройка чисел с...

Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... - C++
Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... как сделать...

Абстрактный класс/Класс интерфейс - C++
Не ловлю суть в чем разница между интерфейсом и абстрактным классом. И там и там у методов нету реализации. Ну интерфейс задает набор...

Создать класс - данные - абстрактный базовый класс. Создать производные классы - C++
Всем привет! У меня вот такая проблема.... Создать класс - данные - абстрактный базовый класс. Создать производные классы - данные типа...

8
Buildog
40 / 40 / 2
Регистрация: 29.04.2012
Сообщений: 185
05.01.2013, 20:15 #2
Помочь сделать - вряд ли, задание объемное. А если по этапам, то надо(как я понял)
1. Разработать абстрактный базовый класс, со указанными функциями.
2. Сделать ещё где-то 3 класса, для типов int, double и char (они должны быть наследованы от абстрактнового, базового)
3. Реализовать добавление объектов класса в односвязный список.
0
vxg
Модератор
3172 / 1975 / 222
Регистрация: 13.01.2012
Сообщений: 7,607
05.01.2013, 20:17 #3
начинайте - поможем. размышления на тему сохранение в файл
0
dimon22-99
0 / 0 / 0
Регистрация: 29.05.2012
Сообщений: 11
05.01.2013, 20:26  [ТС] #4
да сохранение в файл - фигня

Добавлено через 3 минуты
я попытался разработать структуру:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class object
{
public:
    virtual void Input()=0;
    virtual void Output()=0;
    virtual void AddToFile()=0;
    virtual void ReadFromFile()=0;
private:
};
 
class Int:public object
{
    int v;
    Int *next;
};
 
class Double:public object
{
    double v;
    Int *next;
};
0
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
05.01.2013, 20:44 #5
Это хорошая задача.
0
dimon22-99
0 / 0 / 0
Регистрация: 29.05.2012
Сообщений: 11
05.01.2013, 20:56  [ТС] #6
да что-то мне показалась не очень
0
asidorchenko
05.01.2013, 22:04
  #7

Не по теме:

Задача хорошая в том смысле, что она очень близка к реальности и позволяет вам поднять ваш уровень программирования на хороший уровень. Хороший уровень программирования означает и хорошую работу. Если вы сделаете эту задачу самостоятельно, то вам будет лучше.

0
Nick Alte
Эксперт С++
1639 / 1011 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
05.01.2013, 22:42 #8
1) Не забываем о волшебном слове const
2) Не надо пытаться встроить структуру списка в хранимые объекты
3) Загрузка данных из строки - типичный случай, требующий применения производящей функции (статическая функция в составе object, создающая объект нужного типа из строки и возвращающая указатель на object)
0
vxg
Модератор
3172 / 1975 / 222
Регистрация: 13.01.2012
Сообщений: 7,607
05.01.2013, 22:44 #9
Цитата Сообщение от dimon22-99 Посмотреть сообщение
да сохранение в файл - фигня
ну-ну, барабан вам на шею. почитайте все же ту тему
Цитата Сообщение от dimon22-99 Посмотреть сообщение
я попытался разработать структуру
если честно - не особо.
касательно сравнения виртуальный оператор (двусвязный список, наследование)
0
05.01.2013, 22:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2013, 22:44
Привет! Вот еще темы с ответами:

Абстрактный класс - C++
вот у меня есть классы: class CCommand { public: virtual ~CCommand() {}; virtual void execute(CShape *selection)=0; virtual...

Абстрактный класс - C++
Ребят такая проблема, точнее недопонимания. Реализую графический редактор. Есть базовый абстрактный класс GraphObject От него...

Абстрактный класс - C++
Здравствуйте, скажит пожалуйста: как создать абстрактный базовый класс Triad c виртуальными методами увеличения на 1 ,и производные классы...

абстрактный класс - C++
Всем привет, снова я, только уже с новым вопросом, а что такое абстрактный класс. Читаю книгу, не могу врубиться, рассказывается про...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru