DESC
cpp 固有
名前をもたない共有体
[ object をもたず ] に変数にアクセス可能
内部の変数は 共有体として働く( メモリを共有 )
global 変数 無名共有体は static を宣言する static union { int foo, int bar };
union は cmp に {} の 変数は メモリを共有してねと通知する
union を宣言することで, 同一の mem 領域に mapping される.
union 変数の Address 位置から順番に set されるようす.
typedef union uTEST
{
long num;
int d;
char s[4];
char c;
}test;
test u;
memset( &u, 0, sizeof(test) );
u.s[0] = 'a';
u.c = 64; // 残りの bit は操作されないことになる.
memDump( (int *)&u, sizeof(test) );
___
■ 前方宣言(ForwardDeclare)
DESC
Compiler に class の symbol の存在を知らせる
Class 型だけを記述する header は前方宣言のみでよい
POINT
Compiler の視点でみると case で ForwardDeclare すればいいかわかる
Source を見て, Compile できれば問題なし