C++ how to save data about a object code example

Example: C++ how to save data about a object

#include <fstream>
#include <iostream>

class Something
{
public:
	int weight;
	int size;

	// Insertion operator
	friend std::ostream& operator<<(std::ostream& os, const Something& s)
	{
		// write out individual members of s with an end of line between each one
		os << s.weight << '\n';
		os << s.size;
		return os;
	}

	// Extraction operator
	friend std::istream& operator>>(std::istream& is, Something& s)
	{
		// read in individual members of s
		is >> s.weight >> s.size;
		return is;
	}
};

int main()
{
	Something s1;
	Something s2;

	s1.weight = 4;
	s1.size = 9;

	std::ofstream ofs("saved.txt");

	ofs << s1; // store the object to file
	ofs.close();

	std::ifstream ifs("saved.txt");

	// read the object back in
	if(ifs >> s2)
	{
		// read was successful therefore s2 is valid
		std::cout << s2 << '\n'; // print s2 to console
	}

	return 0;
}

Tags:

Cpp Example