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

Загрузка из файла ряда объектов класса - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверка числа кратности двум. http://www.cyberforum.ru/cpp-beginners/thread237310.html
День добрый, проверьте пожалуйста. Задание: Дана последовательность целых чисел, за которой следует 0. Найти количество элементов этой последовательности, кратных числу K1 и не кратных числу K2. #include <stdio.h> #include <conio.h> #include <locale.h> int main() { int k1,k2,n; setlocale(LC_ALL,"RUSSIAN"); printf("Введите колличество цифр...");
C++ сейчас на экзамене В одномерном массиве посчитать сумму элементов после минимального в с++ http://www.cyberforum.ru/cpp-beginners/thread237307.html
C++ СиАОД !!! Прога на С!!!
Напишите программу для слияния 25 отсортированных связных списков.
Арифметические действия с дробями C++
Добрый вечер! Хочу попросить в помощи обратить внимание на ошибку решения следующего задания: Создайте калькулятор, выполняющий четыре арифметических действия над дробями. Пользователь должен сначала ввести первый операнд, затем знак операции и второй операнд. После вычисления результата программа должна отобразить его на экране и запросить пользователя о его желании произвести еще одну...
C++ Очистка памяти в двумерном массиве, есть вопрос... http://www.cyberforum.ru/cpp-beginners/thread237264.html
Доброго времени суток господа! Подскажите как в приведенном ниже коде, сделать очистку памяти, при повтороном ее выделении.. // Dvumernie_Massivi.cpp #include "stdafx.h" #include <stdio.h>
C++ Забить таблицу атмосфер Здравствуйте. нужно написать прогу, которая обращалась бы к данным таблицы атмосфер, например, при вводе одной высоты, выдавала соответственные температуры, плотность и давление. может кто сталкивался с чем-то подобным? или знает как это сделать? Буду рада любой помощи. Заранее спасибо! подробнее

Показать сообщение отдельно
Letfly
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 18
02.02.2011, 17:50     Загрузка из файла ряда объектов класса
Здравствуйте!

Нужно сохранять в файл бинарное дерево.

В мэйне пишу
C++
1
2
3
4
5
6
7
8
9
    ofstream fout("Save.txt",ios::binary);
    fout.write((char*)&count,sizeof count);
    int i;
    for(i=0;i<count;i++)
    {
        pBlock=list.Find(count);
        fout.write((char*)&pBlock,sizeof pBlock);
    }
        fout.close();
вроде нормально сохраняет.
Для загрузки данных из файла пишу
C++
1
2
3
4
5
6
7
8
9
    ifstream fin("Save.txt",ios::binary);
    fin.read((char*)&count,sizeof count);
    int j;
    for(j=0;j<count;j++)
    {
        fin.read((char*)&pBlock,sizeof pBlock);
        list.Insert(pBlock);
        fin.close();
    }
Выдает ошику чтения из памяти. На первой итерации цикла строка
fin.read((char*)&pBlock,sizeof pBlock); НЕ читает ничего.
Может я не правильно загружаю.
Как я понимаю, при сохранении сначала сохраняется переменная count, потом так называемый массив и эти данные идут последовательно в файле, соответственно при загрузке сначала считываем count, потом ряд объектов. Поправьте, если я что-то не так понимаю. Возможно, думаю, сохранить массив примерно так fout.write((char*)&pBlockArray[10],sizeof pBlockArray); Но не хочется добавлять массив в программу, нужно именно по объектам сохранение делать.
На всякий случай полный текст программы.
Вложения
Тип файла: txt mini_akinator.txt (12.3 Кб, 13 просмотров)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru