クラス Complex の << 演算子をオーバーロードしたいと考えています。
プロトタイプは次のとおりです。
void Complex::operator << (ostream &out)
{
out << "The number is: (" << re <<", " << im <<")."<<endl;
}
それは機能しますが、次のように呼び出す必要があります: object << cout 標準出力用。cout << object のように、逆方向に動作させるにはどうすればよいですか?
「this」ポインターはデフォルトでメソッドに送信される最初のパラメーターであることを知っているため、二項演算子は obj << ostream のみを機能させることができます。グローバル関数としてオーバーロードしましたが、問題はありませんでした。
<< 演算子をメソッドとしてオーバーロードし、それを ostream << obj と呼ぶ方法はありますか?