我被告知使用istream&作为我的类Complex的输入函数的参数。这用于复数。但是我很难找到如何使用istream的好解释。
我希望能够找到真实和想象变量。
class Complex
{
public:
void input(std::istream& in);
void output(std::ostream& out);
double getReal();
double getImag();
void setReal(double r);
void setImag(double i);
private:
double real;
double imag;
};
void Complex::input(istream& in)
{
in >> real;
in >> imag;
}
答案 0 :(得分:0)
的签名
void input(std::istream& in);
void output(std::ostream& out);
应允许链接生成的流状态:
std::istream& input(std::istream& in);
std::ostream& output(std::ostream& out) const;
因此,这些可用于您班级的全局重载:
std::istream operator>>(std::istream& is, Complex& c ) {
return c.input(is);
}
std::ostream operator<<(std::ostream& os, const Complex& c ) {
return c.output(os);
}