コンパイラのクラスオブジェクトの処理メカニズム

コンパイラのクラスオブジェクトの処理メカニズム

  1. 通常のメンバー変数: オブジェクトに格納され、構造体変数と同じメモリ レイアウトとアライメントを持ちます。
  2. 静的メンバー変数: グローバル データ領域に格納されます。
  3. メンバー関数: コードセグメントに格納されます。
  4. C++ クラス オブジェクトのメンバー変数とメンバー関数は別々に格納されます。C 言語のメモリの 4 領域モデルは依然として有効です。
  5. C++ のクラスの通常のメンバー関数には、現在のオブジェクトを指す this ポインターが暗黙的に含まれています。
  6. 非静的メンバー変数のみがクラス オブジェクトに属します。静的メンバー関数と静的メンバー変数はクラスに属します。
  7. 空のクラス 1 の結果のサイズ。
  8. 静的メンバー関数と通常のメンバー関数の違い
    1 静的メンバー関数には、特定のオブジェクトへのポインターが含まれていません。
    2 通常のメンバー関数には、特定のオブジェクトへのポインターが含まれています。

Supongo que te gusta

Origin blog.csdn.net/lgglkk/article/details/127129573
Recomendado
Clasificación