Вы можете добавить метод к классу с именем Serialise
, что-то вроде следующего:
CvHist::Serialise( std::string fName, bool read )
{
if ( read )
{
std::ifstream fStream( fName );
// Read in values from file, eg:
fStream >> this->param1;
fStream >> this->param2;
// ...etc
}
else
{
std::ofstream fStream( fName, ios::trunc ); // (ios::trunc clears file)
// Read out values into file, eg:
fStream << this->param1;
fStream << this->param2;
// ...etc
}
}
Обратите внимание, порядок важен - порядок, в котором вы читаете различные параметры изФайл должен соответствовать порядку записи параметров в файл.Также не забудьте #include <fstream>
Теперь, чтобы создать объект CvHist
, заполненный данными из файла data.txt
, вы можете просто написать это:
CvHist object;
object.Serialise( "data.txt", true );
Если вы заполнилиобъект и хотите сохранить его в файле, на этот раз, скажем, bob.dat
, напишите это:
// (object has been populated with data previously)
object.Serialise( "bob.dat", false );