Форум программистов, компьютерный форум 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++ Что такое "сокет"? Посоветуйте литературу Сокет - название программного интерфейса для обеспечения обмена данными между процессами, что то вроде управления протоколом ? и посоветуйте пожалуйста литературу подробнее

Показать сообщение отдельно
roma_m
0 / 0 / 0
Регистрация: 18.02.2014
Сообщений: 36
22.08.2014, 13:14     Написать пару функций для сохранения и восстановления дерева в/из файл (-а)
Доброго времени суток. Создаю шаблон двоичного дерева на с++. Хочу написать пару функций для сохранения и восстановления дерева в/из файл(-а). Но проблема состоит в том что в качестве данных использую класс с атрибутами:
C++ (Qt)
1
2
3
4
5
6
class Scope
{
private:
    string name;
    int identificalNum;
    float IQ;
А функции выглядят вот так:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
bool saveTo(const string &fileName)
    {
        FILE *f = fopen(fileName.c_str(), "wb");
        if (f == NULL) return false;
 
        this->saveTree(this->head, f);
 
        fclose(f);
        return true;
    }
 
    void saveTree(TLeaf *&wp, FILE *&f)
    {
        if (wp == NULL)  return;
 
        fwrite((char*)wp->data, 1, sizeof(T), f);
        this->saveTree(wp->left, f);
        this->saveTree(wp->right, f);
    }
 
    bool loadFrom(const string &fileName)
    {
        FILE *f = fopen(fileName.c_str(), "rb");
 
        if ( f == NULL)
            return false;
 
        T *wp = new T();
 
        for(;!feof(f);)
        {
            if(fread((char*)wp, sizeof(T), 1, f))
            {
                this->addLeaf(*wp);
            }
        }
 
        delete wp;
        fclose(f);
        return true;
    }
И вроде как сохранить оно сохранило, а восстановить - проблема. Надеюсь я могу рассчитывать на вашу помощь.
Спасибо
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 05:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru