Export (0) Print
Expand All
Expand Minimize

Compiler Error C2788

'identifier' : more than one GUID associated with this object

The __uuidof operator takes a user-defined type with a GUID attached or an object of such a user-defined type. This error occurs when the argument is an object with multiple GUIDs.


// C2788.cpp
struct __declspec(uuid("00000001-0000-0000-0000-000000000000")) A

struct __declspec(uuid("{00000002-0000-0000-0000-000000000000}")) B

template <class T, class U> class MyClass

typedef MyClass<A,B> MyBadClass;
typedef MyClass<A,A> MyGoodClass;

int main()
   __uuidof(MyBadClass);    // C2788
   __uuidof(MyGoodClass);   // OK
© 2014 Microsoft