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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
#1

Сохранение переменной в файл - C++

11.10.2013, 10:30. Просмотров 304. Ответов 4
Метки нет (Все метки)

Переменную totalCounter, считываю из файла при старте программы и сохраняю файл при закрытии.
Конструктор работает нормально, на экран выводится значение, сохраненное в файл.
Не если раскомментировать деструктор, то выводится "-85899.."

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <fstream>
#include <iostream>
 
class C_Events {
  public:
      C_Events() : totalCounter(loadTotalCounter()) {}    
      ~C_Events() { saveTotalCounter(); }
 
    inline int loadTotalCounter() {
        std::ifstream infile("data/totalScore.txt");
        infile >> totalCounter;
        return totalCounter;
    }
 
    inline void saveTotalCounter() {
        std::ofstream outfile("data/totalScore.txt");
        outfile << totalCounter;
    }   
 
  private:
 
    int totalCounter;
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.10.2013, 10:30     Сохранение переменной в файл
Посмотрите здесь:

Сохранение переменной в файл - C++
Есть глобальная переменная static char Pass; Есть поток, в цикле которого эта переменная меняется раз в примерно 0.5 секунды. В мейне...

Сохранение значения переменной при наследовании - C++
Есть ли способ сохранить полученное значение переменной count в дочернем классе B после наследования? Небольшой образец ситуации: ...

Сохранение в файл - C++
Здравствуйте! Вообщем у меня такая задача: даны адресса с 77.106.0.0 до 77.106.225.225, нужно перебрать все возможные комбинации, т.е...

сохранение в файл - C++
можете подсказать как сохранять в файл вектор классов, есть три класса class defender private: int a; string b; class...

сохранение в файл - C++
как сохранить массив структур в файл и как считать из файла в массив структур

Сохранение в файл - C++
#include &lt;iostream&gt; #include &lt;string.h&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #include &lt;sstream&gt; #include &lt;fstream&gt; using...

сохранение в файл - C++
Всем привет. Люди добрые помогите пж сохранить введенный результат в файл. #include &lt;iostream.h&gt; #include &lt;stdio.h&gt; #include...

Сохранение структуры в файл - C++
Подскажите если дана структура из трех полей как сохранить ее в файл и загрузить обратно из файла на дисплей. Хотя бы ссылку на что нибудь...

Сохранение списка в файл! - C++
Здравствуйте! Подскажите пожалуйста метод решения! Имеется задание: создать функцию записи списка в файл и функцию его восстановления из...

Сохранение в текстовый файл - C++
Есть вот такой примерный код проги, которая должна считать значение ф-ции с определённым шагом(не меньше 10 значений), и считать её в...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
calculon
14 / 14 / 3
Регистрация: 18.07.2012
Сообщений: 79
11.10.2013, 10:44     Сохранение переменной в файл #2
Это связано с тем, что некорректно написан конструктор и число не загружается. В файл сохраняется случайное значение. Так должно заработать:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class C_Events {
  public:
      C_Events() : totalCounter(0) { loadTotalCounter(); }    
      ~C_Events() { saveTotalCounter();}
 
    inline void loadTotalCounter() {
        std::ifstream infile("score.txt");
        infile >> totalCounter;
    }
 
    inline void saveTotalCounter() {
        std::ofstream outfile("score.txt");
        outfile << totalCounter;
    }   
 
  private:
 
    int totalCounter;
};
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
11.10.2013, 10:56  [ТС]     Сохранение переменной в файл #3
Я так уже пробовал делать. В файл сам записал значение "5", если деструктор
закомментить, то 5 загружается, если раскоментить, то отображается -85899..

И это значение (-85899..) в файл не сохраняется, так 5 и остается
calculon
14 / 14 / 3
Регистрация: 18.07.2012
Сообщений: 79
11.10.2013, 11:08     Сохранение переменной в файл #4
Чудес не бывает. Деструктор никак не влияет на то, что происходит в конструкторе. В десятой студии, например, код работает.
dimakozyr
157 / 24 / 1
Регистрация: 17.08.2013
Сообщений: 461
11.10.2013, 11:40  [ТС]     Сохранение переменной в файл #5
Как оказалось, тут дело в другом. Есть метод StartPoint, который вызывает методы первой и второй сцены игры.
Работа с файлами происходит во втором методе. Если первый закомментировать, то все работает, а иначе выводит -85899..

C++
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
void C_GameCicle::startPoint() {
     callFunctionsForScene_1();
     callFunctionsForScene_2();
}
 
void C_GameCicle::callFunctionsForScene_1() {
    o_loadImages_C_GameCicle.loadImagesScene_1();
    o_drawScene_C_GameCicle.drawScene_1
        (&o_initSurfaces_C_GameCicle, &o_loadImages_C_GameCicle);
    o_sceneElements_C_GameCicle.scene_1_events
        (&o_initSurfaces_C_GameCicle, &o_loadImages_C_GameCicle);
    o_loadImages_C_GameCicle.quitImagesScene_1();   
}
 
void C_GameCicle::callFunctionsForScene_2() {
    o_loadImages_C_GameCicle.loadImagesScene_2();
    o_loadImages_C_GameCicle.ttfInit();
 
    o_drawScene_C_GameCicle.drawScene_2
        (&o_initSurfaces_C_GameCicle, &o_loadImages_C_GameCicle);
    o_drawScene_C_GameCicle.drawBeaver
        (&o_initSurfaces_C_GameCicle, &o_loadImages_C_GameCicle);
    o_sceneElements_C_GameCicle.scene_2_events
        (&o_initSurfaces_C_GameCicle, &o_loadImages_C_GameCicle);
 
    o_loadImages_C_GameCicle.ttfQuit();
    o_loadImages_C_GameCicle.quitImagesScene_2();
}
Добавлено через 12 минут
Разобрался, надо было еще в конструктор с параметрами этот метод вставить
Yandex
Объявления
11.10.2013, 11:40     Сохранение переменной в файл
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru