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

Как записать в файл класс? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача (разъяснение) в алгоритм (программа, используя базовый и производный классы, создавала массив объектов типа производного класса) http://www.cyberforum.ru/cpp-beginners/thread823177.html
Написать программу используя базовый и производный классы (люди, студенты), а так же защищенные члены класса, которая создавала массив объектов типа производного класса, инициализировала бы их...
C++ Деревья синтаксис Добрый день! Есть вот такая штука по деревьям.в case проблема.он орет,что "too few parameters in call to" public: void create(); void output(btree *p); void search(int key); void insert(btree... http://www.cyberforum.ru/cpp-beginners/thread823175.html
C++ STL list
Доброго времени суток, пока имею поверхностное представление о алгоритмах STL и функциях для контейнеров, но есть задача: требуется поменять местами первый и последний элемент списка, вот мой...
Вывод текста на экран дисплея C++
Оформить программный продукт в виде многофайловая проекта на языке С++ Все необходимые данные для функций должны передаваться им в качестве параметров. Использование глобальных переменных в...
C++ Объясните синтаксис! http://www.cyberforum.ru/cpp-beginners/thread823147.html
Часто встречаю в интернете в листингах подобные записи, сама так не пишу, хочется разобраться что это значит?? int N = ( i==0 ? 0 : matrix );
C++ невозможно преобразовать параметр Добрый день. Имеется такой код для поиска и замены в РичТекстБокс: private: System::Void button5_Click(System::Object^ sender, System::EventArgs^ e) { ... подробнее

Показать сообщение отдельно
Teacher269
0 / 0 / 0
Регистрация: 25.12.2012
Сообщений: 12
31.03.2013, 00:49  [ТС]
проблема в том, что сохранятся будет ссылка, а не сами данные.. то есть, если бы было:
C++
1
2
3
4
5
6
7
class _mainclass{
public:
_someclass sc[10];
...
<прочие данные класса>
...
};
тогда можно просто так:
C++
1
2
3
4
5
_mainclass mc;
FILE * pFile;
pFile = fopen ( "myfile.bin" , "wb" );
fwrite (&mc , 1 , sizeof(_mainclass) , pFile );
fclose (pFile);
То есть, можно сказать, одной строчкой fwrite можно записать весь класс разом - очень удобно... но если есть указатели, то запишутся не данные, а ссылка на адрес памяти. То есть получается надо тупо в цикле прогонять типа такого:
C++
1
2
3
for (int i=0;i<ms.n;i++){
fwrite (&ms.sc[i] , 1 , sizeof(_someclass) , pFile );
}
или есть способ по-изящней?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru