Export (0) Print
Expand All

case (C++)

Used with the switch_type attribute in a union.

[ case( 
   value 
) ]

value

A possible input value for which you want to provide processing. The type of value can be one of the following types:

  • int

  • char

  • boolean

  • enum

or an identifier of such a type.

The case C++ attribute has the same functionality as the case MIDL attribute. This attribute is only used with the switch_type attribute.

The following code shows a use of the case attribute:

// cpp_attr_ref_case.cpp
// compile with: /LD
#include <unknwn.h>
[export]
struct SizedValue2 {
   [switch_type(char), switch_is(kind)] union {
      [case(1), string]
          wchar_t* wval;
      [default, string]
          char* val;
   };
    char kind;
};
[module(name="ATLFIRELib")];

Attribute Context

Applies to

Member of a class or struct

Repeatable

No

Required attributes

None

Invalid attributes

None

For more information about the attribute contexts, see Attribute Contexts.

Show:
© 2014 Microsoft