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

Concepts

Visual C++ Samples

Other Resources

IDL Attributes

Typedef, Enum, Union, and Struct Attributes