We recommend using Visual Studio 2017

uuid (C++ Attributes)


The latest version of this topic can be found at uuid (C++ Attributes).

Specifies the unique ID for a class or interface.

      [ uuid(  
) ]  


A 128-bit, unique identifier.

If the definition of an interface or class does not specify the uuid C++ attribute, then the Visual C++ compiler will provide one. When you specify a uuid, you must include the quotes.

If you do not specify uuid, then the compiler will generate the same GUID for interfaces or classes with the same name in different attribute projects on a machine.

You can use Uuidgen.exe or Guidgen.exe to generate your own unique IDs. (To run either of these tools, click Start and click Run on the menu. Then enter the name of the required tool.)

When used in a project that does not also use ATL, specifying the uuid attribute is the same as specifying the uuid __declspec modifier. To retrieve the uuid of a class, you can use __uuidof

See the bindable example for a sample use of uuid.

Attribute Context

Applies toclass, struct, interface, union, enum
Required attributesNone
Invalid attributesNone

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

IDL Attributes
Interface Attributes
Class Attributes
Typedef, Enum, Union, and Struct Attributes
Attributes Samples