我正在学习流媒体。标准流提供<<
操作者可以声明为:为什么输出运算符'os << value'而不是'value >> os'?
ostream& operator<<(stream& os, CLASS& rc);
为何不能将其声明为这个?
ostream& operator>>(CLASS& rc, stream& os);
然后,我也许可以这样做:
rc.something >> os;
作为其实现的一部分。
编辑的人帮助我了解更多关于这一点,我很感谢。
但是我坚持如何实现它。
我已经试过
ostream& operator >> (const SomeClass& refToCls, stream& os)
{
refToCls.iVar >> os;
return os;
}
,但它失败。我该如何解决它?
注意,你应该使用'CLASS常量与rc'。 –
你也指istream在使用时>>不是吗? –
@Martin,感谢您的加入,请看这个答案,并为我提供一个实现>>,使得这种链接工作,如果可能的话。 – Dalton