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

Написать пару функций для сохранения и восстановления дерева в/из файл (-а) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Разница между определением и объявлением переменной http://www.cyberforum.ru/cpp-beginners/thread1245760.html
Здравствуйте! При определении переменной под неё выделяется память.Скажите, выделяется ли память под переменную при объявлении без начального значения? int a; Спасибо за внимание!
C++ Вычислить, сколько в строке слов, заканчивающихся гласной буквой Помогите с решением этой задачи: Дана строка до точки, группа символов в которой между пробелами считается словом, знаки препинания от слова пробелом не отделяются. Необходимо вычислить, сколько в строке слов, заканчивающихся гласной буквой. http://www.cyberforum.ru/cpp-beginners/thread1245736.html
Решить СЛАУ и проверить условие ортогональности C++
Помогите с данной задачей: Решить СЛАУ A(n,n)X=B(n), где матрица A и вектор B заданы. Для матрицы C=XXT проверить условие ортогональности: CCT =E и CTC=E, где E – единичная матрица.
Выбор файла для открытия C++
Добрый день, мне нужна помощь с программой, почти всё сделано, только осталось прикрутить выбор файла пользователем для редактирования(прога редактирует текст). Я пытался сам прикрутить, но видимо что-то не выходит, ошибку в упор не вижу в силу не знания тонкостей языка. Помогите пожалуйста, вот код: #include "stdafx.h" #include<cstdio> #include<cstring> #include<string> #include<iostream>...
C++ Поток ввода-вывода http://www.cyberforum.ru/cpp-beginners/thread1245624.html
#include <iostream> using namespace std; int main() { int i; while(true) { if(cin>>i)
C++ Что такое "сокет"? Посоветуйте литературу Сокет - название программного интерфейса для обеспечения обмена данными между процессами, что то вроде управления протоколом ? и посоветуйте пожалуйста литературу подробнее

Показать сообщение отдельно
DrOffset
6416 / 3790 / 876
Регистрация: 30.01.2014
Сообщений: 6,575
27.08.2014, 01:00     Написать пару функций для сохранения и восстановления дерева в/из файл (-а)
Цитата Сообщение от roma_m Посмотреть сообщение
Нет, не пойдет.
Мне нужно записать в файл объект класса Scope, а не отдельно по полям класса.
Ты, в этом случае, не сможешь это сделать. std::string использует динамическую память и она не сохранится в файл при простом побайтовом копировании объекта в файл. Плюс к этому, так сохранять "можно" только объекты POD типов, они не имеют нетривиальных конструкторов и не содержат полей с такими конструкторами (также не содержат виртуальных функций, нетривиальных деструкторов, и т.д.). Если объект имеет нетривиальный конструктор, то он должен быть сконструирован с помощью него, другие варианты ведут к UB. И еще плюс к этому, даже если тип - POD, то при таком сохранении всегда нужно помнить про выравнивание.

Прочитай про сериализацию и зачем она нужна. Это в целом решает твою проблему. И объясни хотя бы себе, чем принципиально должна отличаться запись объекта целиком, как ты хочешь, от записи его полей последовательно?
 
Текущее время: 08:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru