【发布时间】:2013-10-03 06:02:09
【问题描述】:
我不知道该怎么说,所以我会尝试将它放入代码中。 (这有很多错误我知道它不会编译它只是为了显示我想要做的事情,因为我无法用语言表达)
using namespace std; //for correctness sake
class foo {
public:
foo(int a=0, int n=0);
void stuff(int a);
void function(int n);
const int get_function() {return n;}
const int get_stuff(){return a;}
private:
int n, a;
};
struct Store{
public: get_foo(){return vector<f.foo>;} //I'm not too sure of the syntax here but you get the idea
private:
foo f;
}
基本上,我想获取类 foo 中返回的所有信息,并将其格式化输出到文件中。问题是,我需要在文件中制作其中的许多内容,并且它必须能够读回它才能使其有价值。 所以只是将每个连续的 foo 类附加到文件中是行不通的(至少我不明白如何)。
我尝试使用ostream 重载<< 运算符,但我不知道如何调用它来将其写入文件。欢迎任何建议!谢谢。
【问题讨论】:
-
注意:
const get_function() {return n;}不是符合标准的 C++。该语言需要所有声明的类型说明符。这(以及get_stuff())应该用int声明。自行决定您是否认为const有必要(不是)。 -
@WhozCraig 你说得对,我忘记了函数类型,我使用了 const,因为这是我在课堂上看到的示例。
-
我高度怀疑声明应该是
int get_function() const { return n; },因为该成员没有修改对象的要求。
标签: c++ class file-io constructor struct