C++学習(1)
1432 ワード
staticとconstの違い: staticローカル変数関数のローカル変数として1つの変数を宣言すると、このローカル変数は関数の実行が完了した後も解放されず、メモリに を保持し続ける. staticグローバル変数は、現在のファイルのグローバル内で にアクセスできる変数を表す. static関数は、1つの関数が現在のファイルにのみアクセスできることを示す . staticクラスメンバー変数は、このメンバーが全クラスで共有されている であることを示す. staticクラスメンバー関数は、この関数がクラス全体で共有され、静的メンバー変数 にのみアクセスできることを示す. const定数:定義時に初期化され、以降は変更できません. constパラメータ:func(const int a){};このパラメータは関数の中で を変えることができません const修飾クラスメンバー関数:この関数はメンバー変数に対して読取り専用操作のみを行う staticキーワードの役割:(1)関数内のstatic変数の役割範囲はこの関数体であり、この変数のメモリは一度しか割り当てられていないため、その値は次回の呼び出し時に前回の値を維持する.(2)モジュール内のstaticグローバル変数と関数はモジュール内の関数によってアクセスできるが、モジュール外の他の関数によってアクセスできない.(3)クラス内のstaticメンバー変数はクラス全体が所有し、クラスのすべてのオブジェクトに対して1部のコピーしかない.(4)クラス内のstaticメンバー関数はクラス全体が所有するものであり,この関数はthisポインタを受信しないため,クラスのstaticメンバー変数にのみアクセスできる.
constキーワードの役割:(1)変数が変更されることを阻止する(2)定数ポインタとポインタ定数を宣言する(3)const修飾パラメータは、関数内部で値を変更できない入力パラメータであることを示す.(4)クラスのメンバー関数についてconstタイプとして指定すると、クラスのメンバー変数を変更できない定数関数であることを示します.(5)クラスのメンバー関数では、その戻り値が「左値」でないようにconstタイプとして指定する必要がある場合があります.
プリプロセッサ
defineは言語の一部と見なされず、コンパイラに見られません.コンパイラがソースコードの処理を開始する前に、プリプロセッサに移動されます.記号名が記号表に入っていない可能性があり、この定数を用いてコンパイルエラー情報を取得すると、ASPECT_ではなく1.653に言及するため、困惑する可能性があります.RATIO.
参考資料:
https://www.cnblogs.com/Jinfe...
constキーワードの役割:(1)変数が変更されることを阻止する(2)定数ポインタとポインタ定数を宣言する(3)const修飾パラメータは、関数内部で値を変更できない入力パラメータであることを示す.(4)クラスのメンバー関数についてconstタイプとして指定すると、クラスのメンバー変数を変更できない定数関数であることを示します.(5)クラスのメンバー関数では、その戻り値が「左値」でないようにconstタイプとして指定する必要がある場合があります.
プリプロセッサ
#define ASPECT_RATIO 1.653
をconst,enum,inlineで置換#define=寧可コンパイラで置換defineは言語の一部と見なされず、コンパイラに見られません.コンパイラがソースコードの処理を開始する前に、プリプロセッサに移動されます.記号名が記号表に入っていない可能性があり、この定数を用いてコンパイルエラー情報を取得すると、ASPECT_ではなく1.653に言及するため、困惑する可能性があります.RATIO.
参考資料:
https://www.cnblogs.com/Jinfe...