Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 1

Хранение и инициализация объектов классов в текстовом файле

04.01.2016, 02:16. Показов 1027. Ответов 0

Студворк — интернет-сервис помощи студентам
Нужно сделать сохранение параметров объектов классов Rectangle, Rhomb и Circle с последующим восстановлением в vector<Shape*> shapes.

Выведены только параметры:
C++
1
2
3
4
5
6
7
8
class Shape
{
protected:
    int x, y;
    std::string text;
    int color[3];
        std::vector<Shape*> connections;
};
C++
1
2
3
4
5
class Quadrangle : public Shape
{
    protected:
        int len, wid;
};
C++
1
2
3
4
class Rhomb : public Quadrangle
{
    // новых параметров нет
};
C++
1
2
3
4
class Rectangle : public Quadrangle
{
   // новых параметров нет
};
C++
1
2
3
4
5
class Circle : public Shape
{
    private:
        int rad;
};
То есть, для прямоугольника и ромба должны быть сохранены в файл: координаты центра (x, y), длина, ширина, цвет (RGB), текст (string) и вектор связей с другими фигурами.
Для круга то же самое, только вместо длины и ширины - радиус.

Пробовал делать сериализацию данных, но многое не смог понять оттуда. К тому же, я не знаю, как распознавать объекты по их параметрам при загрузке из файла, а также, распознание текста, если в нем может быть больше, чем одно слово (что увеличит кол-во параметров).

Заранее спасибо за помощь!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.01.2016, 02:16
Ответы с готовыми решениями:

Хранение настроек в текстовом файле
Есть файл Config.txt с содержимым: Left = 100 Top = 30 Caption = MyProgram ... Нужна функция Function XXX(n: string; s:...

Хранение функции в текстовом файле
Можно ли как-то хранить функцию в текстовом файле, который находится в ресурсах, и вызывать ее?Я нашел в интернетах &quot;нечто&quot;, и...

Хранение базы данных в текстовом файле
Подскажите как лучше организовать считывание данных с файла. И в какую структуру данные загонять. Пишу на с++ builder Пример данных,...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.01.2016, 02:16
Помогаю со студенческими работами здесь

Централизованное хранение объектов из трёх разных классов.
Здравствуйте, у меня есть три класса и нужно работать с объектами из всех трёх классов, вопрос в том, как можно их централизованно хранить?...

Хранение объектов (а не их адресов) классов VCL внутри контейнера vector
Всем привет.:) Проблемка. Память под объекты delphi-style классов, таких как классы VCL, в билдере нужно выделять оператором new. При...

Наследование static атрибута(хранение количества объектов наследуемых классов)
Есть абстрактный класс base, от него наследуются 3 класса child1 child2 child3. Создается множество объектов одного из этих трех классов, в...

Замена слов в одном текстовом файле словами, записанными в другом текстовом файле
Кто-нибудь пожалуйста приведете пример реализации следующей программы имеются два тектовых файла - один с повторяющимися записями типа ...

Удалить в текстовом файле 1.txt все строки, которые встречаются в текстовом файле 2.txt
например имеется текстовый файл 1.txt c таким содержанием 111 222 333 444 555 и имеется текстовый файл 2.txt c таким...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru