読者です 読者をやめる 読者になる 読者になる

yProcessingClub

すみません、許してください

C++勉強中

勉強メモ。

・getter/setterによってメンバ変数を隠蔽する

class Class {
public:
	double x;
};

ではなく

class Class {
public:
	double GetX() const;
	void SetX(double val);
private:
	double mX;
};

double Class::GetX() const {
	return mX;
}
void Class::SetX(double val){
	mX = val;
}

のように書く。

getter/setter内にデバッグメッセージやブレークポイントを仕込めばどのタイミングで値がget/setされたか分かる。
値が変更されるたびに特定の処理をする、みたいな処理もsetterに追加できる。
setterを消せば外部からは値の変更ができなくなるなど、読み書きの制御が行える。

などメリット色々らしい。