Beágyazott uniók
Egy olyan egyesítés, amely egy struktúrában diszkriminánssal rendelkezik, egy beágyazott egyesítés. A beágyazott egyesítést a kapcsoló kulcsszó jelenléte jelzi. Ez az egyesítési típus azért van így elnevezve, mert a MIDL fordító automatikusan beágyazza az egyesítést és annak diszkriminánsát egy távoli eljáráshívás során történő átvitelre szolgáló struktúrába.
Ha hiányzik az egyesítő címke (U1_TYPE a fenti példában), a fordító létrehozza a struktúrát a tagged_unionnevű egyesítési mezővel.
Az összekapcsolhatóság biztosításához az egyesítők alakjának azonosnak kell lennie a platformok között.
A beágyazott egyesítés formájának leírását az egyesítésicímű cikkben talál.
Példák
typedef union _S1_TYPE switch (long l1) U1_TYPE
{
case 1024:
float f1;
case 2048:
double d2;
} S1_TYPE;
/* in generated header file */
typedef struct _S1_TYPE
{
long l1;
union
{
float f1;
double d2;
} U1_TYPE;
} S1_TYPE;
További információ: MIDL-alaptípusok, karakter, [context_handle], enum, [first_is], [handle], [figyelmen kívül hagyja], int, [figyelmen kívül hagyja], [last_is], [length_is], [max_is], [ms_union], nemcapsulated unions, [ptr], [hiv], [size_is], [sztring], struct, kapcsoló, [switch_is], [switch_type], [transmit_as], unióés [egyedi]