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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как записать строчную букву в заглавную? http://www.cyberforum.ru/cpp-beginners/thread1654646.html
В первой подпрограмме (formating_1) нужно что-бы программа записала фразу "привет мир. hello world" как "Привет мир. Hello world" по коду ниже, программа меняет только букву "П", а буква "h"...
C++ Что не так в коде? (парсер текста) есть условие: дан текст, состоящий из предложений, разделенных точками "привет мир. hello world". Напишите программу, что делать такое форматирование: после каждой точки в конце предложения текста... http://www.cyberforum.ru/cpp-beginners/thread1654639.html
C++ Книги по ИКТ
Доброго времени суток, уважаемые обитатели. Готовлюсь к региональной олимпиаде по Информационным Компьютерным Технологиям. Прошу у вас помощи, так как надеюсь на вашу осведомленность в этом вопросе....
Lambda expressions only available with -std=c++11 or -std=gnu++11 C++
В студии все работает, в qt попробовал mingw - выводит варнинг lambda expressions only available with -std=c++11 or -std=gnu++11 а потом no matching function for call to 'for_each с mvcc...
C++ Использование ассемблера http://www.cyberforum.ru/cpp-beginners/thread1654583.html
Вообщем есть два файла main.cpp и add.S. Первый содержит код для компилятора g++, а также вызов внешней функции add. Функция add определяется в файле add.S и написана на ассемблере. Для g++ строка...
C++ Куда идти, пока молодой? Эй, привет. Может не по теме, но все равно. Тут, скорее всего, есть люди с большим жизненным опытом в программизме всяком, особенно на С++. Мне еще нету 16, но я уже определился, что хочу... подробнее

Показать сообщение отдельно
korol-sas
0 / 0 / 0
Регистрация: 22.11.2015
Сообщений: 8

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

04.02.2016, 04:45. Просмотров 179. Ответов 1
Метки (Все метки)

Здравствуйте, пытаюсь сделать запись вектора из обьектов моего класа в бинарный файл, но получаю не понятного рода символы в значениях атрибутов класа.
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void save()
{
     ofstream fout("data.dat", ios::out | ios::binary | ios::trunc);
     fout.write(reinterpret_cast<const char*>(&humans[0]), humans.size()*sizeof(Human));
     fout.close();
}
 
void load()
{
    ifstream fin("data.dat", ios::in | ios::binary);
    fin.seekg(0, fin.end);
    int N = fin.tellg();              
    fin.seekg(0, fin.beg);
 
    const size_t count = N / sizeof(Human);
    vector<Human> buf(count);
    fin.read(reinterpret_cast<char*>(&buf[0]), count*sizeof(Human));
    fin.close();
    humans = buf;
}
получаю допустим такой результат в атрибуте first_name моего класа Human: `-61 'Г'`

Вот мой клас:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class Human {
    public:
        void set_first_name(char *);
        char *get_first_name();
 
        void set_last_name(char *);
        char *get_last_name();
       
        void set_phone(char *);
        char *get_phone();
 
        void set_address(Address);
        Address get_address();
 
    private:
        char *first_name;
        char *last_name;
        char *phone;
        Address address;
 
};
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru