[ create a new paste ] login | about

Link: http://codepad.org/Ihi5aQ3j    [ raw code | fork ]

C++, pasted on Nov 10:
// =============================================================
// =============== 構造体の考え方一例:簡潔版2 ================
// =============================================================

int main()
{

   int                     z;  // ← A) 組み込み型
   //^^^^^^^^^^^^^^^^^^^   ^

   struct{int a; int b;}  x;  // ← b) 構造を明示した無名構造体
   //^^^^^^^^^^^^^^^^^^^   ^

   class {int a; int b;}   y;  // ← C) 構造を明示した無名クラス
   //^^^^^^^^^^^^^^^^^^^   ^

   union {int a; int b;}   w;  // ← D) 構造を明示した無名共用体
   //^^^^^^^^^^^^^^^^^^^   ^

   /* Note:
      A ... メンバー無し
      B ... メンバーのデフォルトスコープが public
      C ... メンバーのデフォルトスコープが private
      D ... メンバーのデフォルトスコープが public

      struct と class はデフォルトのスコープ以外同じ。

      union だけもう少し違う。具体的にはメンバーのメモリ上での領域が
      共有されている。上の例だと a に代入しても b に代入しても同じメモリ上に
      格納される。 また継承機能が無い。なので仮想関数も当然無理。
      また static メンバも無理。 あくまで「共有メモリ空間を作る」もの
   */

 return 0;
}


Output:
No errors or program output.


Create a new paste based on this one


Comments: