Вопросы сериализации12.11.2012, 20:32. Показов 2009. Ответов 22
Метки нет (Все метки)
0
|
||||||||
| 12.11.2012, 20:32 | |
|
Ответы с готовыми решениями:
22
Метод сериализации
По поводу сериализации |
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:34 | |
|
НеСказочник, нет, стандартных, к сожалению, нет. Можно воспользоваться, например, boost::serialization. Али закатать рукава и написать собственный сериализатор (и убиться
). Да и на счёт класса для работы с JSON что-то я сомневаюсь. Нет такого в стандарте.
0
|
|
| 12.11.2012, 20:35 [ТС] | |
|
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:37 | |
|
НеСказочник, ну, дотнет к языку С++ мало отношения имеет. И я почти уверен, что там есть своя сериализация.
0
|
|
| 12.11.2012, 20:38 [ТС] | |
|
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:39 | |
|
НеСказочник, ещё раз, язык С++ и франкенштейн майкрософтовский далековато друг от друга.
0
|
|
| 12.11.2012, 20:41 [ТС] | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:42 | |
|
НеСказочник, вам надо сохранять экземпляры разных классов? Или задача про конкретный класс/небольшую иерархию? Если так, можно действительно свою простенькую сериализацию замутить.
0
|
|
| 12.11.2012, 20:45 [ТС] | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:48 | |
|
Croessmah, если поля нетривиальные и сами являются классами со сложной внутренней структурой - не легче. Если же речь о простом переводе класса в бинарный поток, то об этом и речи быть не может в общем случае и с сохранением независимости от компилятора, ведь если используется виртуальное наследование или позднее связывание, одному компилятору известно, где в классе будет лежать таблица виртуальных функций/классов и прочие тонкости реализации.
Добавлено через 1 минуту НеСказочник, тогда действительно лучше воспользоваться сторонними реализациями алгоритмов сериализации, бустовской, например. Аль в дотнете пошарить, я уверен, там это есть (в шарпе сериализация точно есть).
0
|
|
| 12.11.2012, 20:50 [ТС] | ||
|
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.11.2012, 20:56 | |
|
Croessmah, почему нет? Если придать типу условное обозначение (некий бинарный идентификатор), по которому десериализатор сможет восстановить тип объекта, он сможет и память под него выделить. А уж данными её заполнить не проблема - читай и читай себе набор байтов из файла.
0
|
|
|
Неэпический
|
||
| 12.11.2012, 21:01 | ||
|
Есть объект A, в котором есть массив указателей на объекты класса B, выделенные в динамической памяти. При сохранении объекта A указатели же будут сохранены?
0
|
||
| 12.11.2012, 21:09 [ТС] | ||
|
- Сохранить экземпляр класса A с указателями на экземпляры класса B (при условии, что экземпляры класса B где-то сохраняются) - Или сохранить Экземпляр класса A вместе с экземплярами класса B, а при распаковке поставить на место, как было. Добавлено через 4 минуты Во, во. Вроде бы нащёл: http://msdn.microsoft.com/ru-r... atter.aspx Если я правильно понял описание, то эта штука может запихнуть в поток кого угодно и не подавится.
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|||||||||||
| 12.11.2012, 21:20 | |||||||||||
|
Croessmah, зачем? Я же наоборот говорю, о простом переводе объекта в массив байтов и речи быть не может. При сохранении объекта, лежащего в динамической памяти, надо сохранять само состояние этого объекта (рекурсивно, если в объекте тоже есть данные, выделенные динамически - сохраняем эти данные, а не указатель). Т.е. например имеем класс:
Вот как-то так. Очень похоже на XML, что не удивительно, ведь XML-представление объектов - один из способов сериализации. Добавлено через 2 минуты НеСказочник, да, судя по всему, оно и есть.
1
|
|||||||||||
|
Неэпический
|
|
| 12.11.2012, 21:22 | |
|
0
|
|
| 12.11.2012, 21:22 | |
|
Помогаю со студенческими работами здесь
20
Ищу литературу по интерфейсам, делегатам, сериализации и т.п. применительно к C++ Когда вопросы кончаются, сделать кнопку неактивной и вывести сообщение о том, что вопросы кончились Ошибка сериализации По поводу сериализации Подобие сериализации Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|