オブジェクトの書き出しにスマートな方法解説してるページってありません?

見たので一番シンプルだったのは operator<< オーバーライトで
BinWriter << メンバ1 << メンバ2 << メンバ3
見たいに書いてるやつ。

でもグローバルに operator<<が大量に発生するんだよね…
基底クラスを工夫すればもっといい書き方あるかなぁ…?