ms_union

Controls the network data representation alignment of nonencapsulated unions.

[ms_union]

Remarks

The ms_union C++ attribute has the same functionality as the ms_union MIDL attribute.

Example

The following code shows the placement of ms_union:

// cpp_attr_ref_ms_union.cpp
// compile with: /LD
#include <unknwn.h>
[object, ms_union, uuid("00000000-0000-0000-0000-000000000001")]
__interface IFireTabCtrl {
   HRESULT DisplayString([in, string] char * p1);
};

[export, switch_type(short)] union _WILLIE_UNION_TYPE  {
   [case(24)]
      float fMays;
   [case(25)]
      double dMcCovey;
   [default]
      int x;
 };

[public] typedef _WILLIE_UNION_TYPE WILLIE_UNION_TYPE;

[module(name="ATLFIRELib")];

Requirements

Attribute Context

Applies to

Nonencapsulated unions

Repeatable

No

Required attributes

None

Invalid attributes

dispinterface

For more information, see Attribute Contexts.

See Also

Other Resources

IDL Attributes

Typedef, Enum, Union, and Struct Attributes

ATL Samples