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

Как сохранить\прочитать контейнер в бинарный файл - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Змейка http://www.cyberforum.ru/cpp-beginners/thread917994.html
Решил написать собственный аналог змейки. Создал костяк программы, и у меня возникло три вопроса. 1. Змейка отказывается двигаться влево(нажат CapsLock и раскладка английская, при других параметрах все ОК). 2. Как сделать управление с помощью клавиш?(+Page Up, Page Down, Home, End) 3. Экран сильно мерцает при передвижении змейки. Возможно из-за system("cls"). Можно ли изменять положение змейки...
C++ программа рождает программу? Добрый день, вот такой вопрос: Возможно ли, чтобы программа в результате своих алгоритмов писала новые строки программного кода, а затем сама же по ним работала? Либо изменяла свой собственный код http://www.cyberforum.ru/cpp-beginners/thread917986.html
Как, при разнесении программы на части, в С++, сделать так, чтобы подключаемый файл заметил компилятор? C++
думаю, всё ясно из темы :) Добавлено через 47 секунд Т.е. куда помещать подключаемый файл?
Не пойму где ошибка C++
#include <iostream> using namespace std; int main() { setlocale(0, ""); double a, b; char f; a = 0; f = "+"; cout << "Ваше число = " << a << endl;
C++ графы. поиск в ширину http://www.cyberforum.ru/cpp-beginners/thread917944.html
у меня такая задача: Определить, является ли неориентированный граф двудольным графом через алгоритм поиска в ширину. мне хотя бы алгоритм поиска в ширину подскажите, пожалуйста
C++ Какое число вернет foo(5)? int foo (int n) { if (n <= 0) return 0; return foo (n - 2) + foo (n / 2) + 1; } Вставляю код, выполняю с нужным параметром и все хорошо, ответ найден и равен 6. Но на тесте вместо компилятора будет листочек и ручка. Подскажите пожалуйста, как это вообще можно посчитать вручную? Или как удобней всего будет изобразить это на бумаге, чтобы не запутаться, а то уже несколько раз... подробнее

Показать сообщение отдельно
d1skort
20 / 20 / 0
Регистрация: 10.02.2013
Сообщений: 75
05.07.2013, 07:35     Как сохранить\прочитать контейнер в бинарный файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    ostream_iterator<string, char> out(cout, "\n");
    set<string> mat;
    set<string> pat;
    string temp;
    cout << "Input Mat's friends:\n";
    while (getline(cin, temp) && temp != "quit")
        mat.insert(temp);
 
    ofstream fout("mat.dat", ios_base::out | ios_base::app | ios_base::binary);
    fout.write((char *) &mat, sizeof mat);
 
    ifstream fin("mat.dat", ios_base::in | ios_base::binary);
    fin.read((char *) &pat, sizeof pat);
 
    cout << "Pat's:\n";
    copy(pat.begin(), pat.end(), out);
Компилируется и вроде бы сохраняет в файл, но не хочет читать из него. Может я что - то не так делаю? Искал в интернете, но везде в основном пишут как сохранять статические переменные, можно ли контейнеры сохранять вообще?

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