フレンドクラスは、他のクラスのプライベートなメンバ変数を利用するための物らしい。
たとえば、大金持ちのクラスがあって、小金持ちクラスが大金持ちクラスのメンバ変数という持ち物を使いたいときに使わせてもらう物らしい。
大金持ちのクラス
Class Okanemoti
friend class Koganemoti;
private:
int car;
int plane;
--
小金持ちクラス
Class Koganemoti
void f(Okanemoti kari){//大金持ちから借りる
cout<<kari.car<< endl;
}
ついでに、もう一度派生方法を勉強してみると
private,protectedとして派生クラスを作成するとどのメンバ変数にもアクセスできないらしい。
publicでは当然private,protectedのメンバ変数にはアクセスできない。
そもそも一人でプログラムを作っているときは、プライベート、プロテクトなんてさっぱり。
一人で作っているときは、なんにでもアクセスできる方がわかりやすい。でもその代わり変数が多すぎてなにがなんだかわからないが。
プライベートやプロテクトは、設計段階でプライベートにして誰にも触らせないと思っていたけど、後になって変更してもらった方が良くなったと言う仕様変更になったときに使わせるものだと解釈した。
または、参考にしたサンプルソースでプライベートで作られていて、自分のわがまま仕様で触らせてもらいたいときにフレンドクラスを使えばよいのかな。
参考
猫でもわかるプログラミング
第19章 フレンドクラス
http://www.kumei.ne.jp/c_lang/cpp/cpp_19.htm
【送料無料☆2000円ポッキリ!!】当店人気NO.1のお菓子
うふケーキ 3個鳩子の海 3個タ萩の夏蜜柑プーロ 2個チーズブッセプーロ 2個山の口 3個だんだん畑の贈り物 3個たっぷりたっぷり楽しめる♪新おためしセット
上海問屋


楽天トラベル