我必须用一种方法编写类来从任何流中读取数据(cin,ifstream等等),然后写入任何流。我需要这样的东西:
void save(std::ostream &stream);
但不知道如何强制使用它。
感谢您的帮助。
答案 0 :(得分:2)
在实现任何内容之前,您应确定用于存储和加载文件中数据成员的结构,布局或协议。
以下是一个例子:
struct MyClass
{
void load_from_stream(std::istream& inp)
{
inp >> first_value;
inp >> second_value;
}
unsigned int first_value;
double second_value;
};
该方法将接受来自std::istream
的任何对象,例如std::cin
或std::ifstream
。
用法:
MyClass m;
m.load_from_stream(cin);
同样,对于std::ostream
和保存。