私はストリーミングについて学んでいます。なぜ出力演算子の 'os << value'ではなく 'value >> os'ですか?
ostream& operator<<(stream& os, CLASS& rc);
なぜそれが不可能このようにそれを宣言することです:標準ストリームは、として宣言することができ<<
オペレータに提供しますか?その実装の一部として
rc.something >> os;
:
ostream& operator>>(CLASS& rc, stream& os);
それから私のような何かを行うことができるかもしれません。
編集人々が私はこれについての詳細を学ぶ助けたとして、私は感謝しています。
しかし、私は実際にそれを実装する方法に固執しています。
私は
ostream& operator >> (const SomeClass& refToCls, stream& os)
{
refToCls.iVar >> os;
return os;
}
を試してみましたが、それは失敗します。どうすれば修正できますか?
注意、あなたは 'クラスのconst&rc'を使用する必要があります。 –
>>あなたは、あなたが>>を使っているときにも、istreamを意味しますか? –
@ Martin、参加していただきありがとうございます。回答を見て、可能であれば、そのような連鎖作業を行う>>の実装を提供してください。 – Dalton