05/08/03 15:53:33 jTsRxCnN.net
>>123
後者が正解。
変数への取得関数(アクセッサ)のみパブリックにするべき。
変数をパブリックにすると、外部からでも値を直接書き換えられるので、
問題が起きたときに調査する範囲が広くなる。
あと、専用の関数を作っておけば値の取得などを一カ所で監視できる。
(例えば不正な値が参照されたときに assert するなど)。
まあ、狭いスコープのクラスや、公開する相手が限られているクラス、
全体で使う小さなクラス(PointやVector)の場合は、面倒だから公開しちゃってる場合もある。
でも、その場合は class じゃなくて struct で宣言したり、
friend を使ったりして区別しておくと、問題の絞り込みや把握に役立つ。
まあ、頑張ってくれ。