を書く私はクラスBを継承、クラスBとC事実上、継承クラスA、 およびクラスDを持っており、 C.は、C++、私は「死のダイヤモンド」に似たケースを持つ複数の継承クラスからバイナリファイルに</p> <p>を
A
/\
B C
\/
D
B & Cメンバー、および、独自のメンバーを継承しています。 Dにはメンバーだけが継承されています。
私は書いています。ofstreamを取得し、Objectをバイナリファイルに書き込むメソッドを保存しています。
そして、ifstreamを取得し、バイナリファイルからオブジェクトを作成するLoadメソッド。
方法は、各クラスのメソッドを書くときにのみ、その特定のクラスのメンバーが&保存(および継承されたメンバーの残りの継承されたクラスのメソッドを使用しています)今
をロードし処理するように仮想と書かれていますDのための方法を保存し、基本的に私は実行する必要があります。
B.save();
C.save();
明らかにこれはA.saveは()を2回二回
ファイルに書き込まれるようになりますどのと呼ばれるようになります私は思いますsaveOnlyメソッドをBに追加し、Cのみメンバーを保存する(Aのものではない)は愚かです
このような場合のベストプラクティスは何ですか?
ようこそスタックオーバーフロー。 [The Tour](http://stackoverflow.com/tour)を読み、[ヘルプセンター](http://stackoverflow.com/help/asking)の資料を参考にしてください。ここに聞いてください。 –