Categories
リファクタリング

不変性を維持する

概要

 変数の意図しない変更を防ぐことは、プログラムの安全性やコードの可読性を高めます。C++における const キーワードは、変数やメンバ関数、ポインタなどに使用される修飾子です。 ここでは、constキーワードの使い方について説明します。

  • 変数の宣言における const
    const 修飾子を変数の宣言に付けると、その変数は値の変更ができなくなります。つまり、その変数は「定数」として扱われます。 const 修飾子は、変数の宣言時に初期化される必要があります。
    以下の例では、MAX_VALUE は定数であり、その値は変更できません。
  • constメンバ変数
    メンバ変数がオブジェクトの対象として持つデータの値が変更されないことを示す修飾子です。
  • constメンバ関数
    const メンバ関数は、メンバ関数がオブジェクトの状態を変更しないことを示すC++の機能です。これは、クラス内のメンバ変数の読み取りや他のconstメンバ関数の呼び出しを許可する一方で、メンバ変数の変更や非constメンバ関数の呼び出しを禁止します。
    以下の例では、getValue メンバ関数はオブジェクトの状態を変更せず、値の取得などの処理を行います。