| description | Learn more about: export | |
|---|---|---|
| title | export (C++ COM Attribute) | |
| ms.date | 10/02/2018 | |
| f1_keywords |
|
|
| helpviewer_keywords |
|
|
| ms.assetid | 70b3e848-fad6-4e09-8c72-be60ca72a4df |
Causes a data structure to be placed in the .idl file.
[export]The [export] C++ attribute causes a data structure to be placed in the .idl file and to then be available in the type library in a binary-compatible format that makes it available for use with any language.
You cannot apply the [export] attribute to a class even if the class only has public members (the equivalent of a struct).
If you export an unnamed enum or struct, it is given a name that begins with __unnamedx, where x is a sequential number.
The typedefs valid for export are base types, structs, unions, enums, or type identifiers. See typedef for more information.
The following code shows how to use the [export] attribute:
// cpp_attr_ref_export.cpp
// compile with: /LD
[module(name="MyLibrary")];
[export]
struct MyStruct {
int i;
};| Attribute context | Value |
|---|---|
| Applies to | union, typedef, enum, struct, or interface |
| Repeatable | No |
| Required attributes | None |
| Invalid attributes | None |
For more information, see Attribute Contexts.
Compiler Attributes
Typedef, Enum, Union, and Struct Attributes