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

ifstream, ofstream и объекты класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача чтения и записи текстовых файлов http://www.cyberforum.ru/cpp-beginners/thread539389.html
Необходимо считать текст из файла, обработать его, и записать в файл, но не получается даже скопировать из одного файла в другой, не могу разобраться почему, помогите, пожалуйста. Прогу делаю на Borland C++ v 3.1 Вот, что пока получилось #include <stdio.h> #define BSIZE 200 int main(){ char base; FILE *in, *out; in=fopen("123.txt","r");
C++ Помогите найти и исправить ошибку в очереди. Здравствуйте. Вот написал очередь, но работает не совсем корректно. Удаляет "голову очереди" вроде бы правильно, но после добавления "хвоста" в очереди появляются непонятно какие элементы. Помогите пожалуйста найти ошибку. #include <iostream> #include <conio.h> #include <locale> using namespace std; void main() { setlocale (LC_ALL, "Russian"); http://www.cyberforum.ru/cpp-beginners/thread539379.html
Строковые типы данных (не получается) C++
Не могу написать алгоритм, текст программы: Дан текст, состоящий не менее чем из пяти слов. Вывести на экран слова, которые имеют одинаковые окончания "ИЯ","ИСТ","ИКА". #include <iostream> #include <string.h> using namespace std; void main () { int const n=100, kol=10; typedef char String ; String s, mas ; cout<<"Vvedite stroku: ";
vector C++
подскажите , что не так int s=10; vector <vector<string>> B; for(int i=0; i < s; ++i) { for(int r=0; r < 1; ++r) { B=E; }
C++ Написание визуальных программ http://www.cyberforum.ru/cpp-beginners/thread539351.html
Изучаю C++ уже год, так и не понял, как делать визуальные программы. Работал только с консольными. Не подскажите, как визуализировать?)
C++ консоль Напишите полезные ,и красивые скрипты для консоль ,на пример какие то эфекты при загрузки подробнее

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

ifstream, ofstream и объекты класса - C++

05.04.2012, 00:43. Просмотров 1211. Ответов 3
Метки (Все метки)

Доброго времени суток, помогите пожалуйста разобраться.

Есть некий класс:
C++
1
2
3
4
5
6
7
8
9
class Tr {
public:
Tr(){}
~Tr(){}
 
private:
char* one;
char* two;
}
и несколько объектов этого класса, которые я хочу сохранить в бинарный файл:

C++
1
2
Tr one;
Tr two;
Как сохранить/загрузить один объект - я понимаю:
C++
1
2
3
4
5
6
7
ofstream outn("test.df", std::ios::out | std::ios::binary);
outn.write((char*) &one, sizeof(Tr));
outn.close();
 
ifstream intn("test.df", std::ios::in | std::ios::binary);
intn.read((char*) &one, sizeof(Tr));
intn.close();
А вот как поступить когда есть несколько объектов? Я так понимаю, нужно узнать размер записанного объекта и переместить на этот размер курсор, после чего осуществить запись или чтение, а вот как это сделать никак не могу понять.

Пробовал переместить курсор так:
C++
1
outn.seekp(sizeof(Tr), std::ios::beg | std::ios::binary);
Но ничего не получилось. И так же задаюсь вопросом, что если программа заранее не знает какого размера объект записан в файле, как ей сообщить об этом? Есть какие-то мысли на счет записывания где-нибудь в другом файле (или в этом же) размеров и количества записанных объектов, но честно говоря не очень до конца понимаю реализацию. Подскажите кто, что может, буду рад любой помощи, если не сложно помогите кодом. Заранее благодарю.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru