カプセル化というのを知って、さっそくやってみようと思ったのですが、
ファイル内のstatic変数を、操作する時の関数について悩んでしまいました。
例)サウンドノベルのコードでの例ですが
message.cppファイル
---------------------------------------------
// キーを入力するまで、メッセージ表示を、次に進めないで待つフラグ
true : 待ち状態 | false : 待ち状態解除
static bool WaitKeyFlag = false;
1つ目の方法:
// WaitKeyFlag に引数のbool型( true 又は false)を代入する関数
void setWaitKeyFlag ( bool hWaitKeyFlag )
{
WaitKeyFlag = hWaitKeyFlag;
}
がいいのか、
2つ目の方法:
// WaitKeyFlag に true を,代入する関数
void setWaitKeyFlag ( void )
{
WaitKeyFlag = true;
}
// WaitKeyFlag に false を,代入する関数
void unsetWaitKeyFlag ( void )
{
WaitKeyFlag = false;
}
がいいのかです。
1つ目の方法は、引数を使う分、メモリを使うかなあと思ったり。
2つ目は、引数を使わない分、処理はこっちのほうが速いかなとは思うものの、
この方法を他のフラグ関係の全部の変数に使うとなると、関数が多くなってコードの量が増えてしまうのではないかなあとも思ったりして悩んでいます。
コードを読んだときのわかりやすさを考えると、
個人的には、1つ目の方法の,setWaitKeyFlag( false );と記載したほうが、
2つ目の方法のunsetWaitKeyFlag();より
フラグにfalseを代入したことが、見た目的にわかりやすい感じでいいと思うのですが皆さんは、どのような方法でされているのでしょうか?
あと、関数名が長くなってしまいがちなのですが、あまり長い関数名は良くないものなのでしょうか?
関数名の作り方の定石のような物があれば教えてほしいです。
他人から見たらどうでもいい事なのかもしれないのですが悩んでいます。アドバイスよろしくお願いします。