Compilerfehler C2788
Aktualisiert: November 2007
Fehlermeldung
'Bezeichner': Mehr als eine GUID mit diesem Objekt verbunden
'identifier' : more than one GUID associated with this object
Der __uuidof-Operator akzeptiert entweder einen mit einer GUID verbundenen benutzerdefinierten Typ oder ein Objekt eines solchen benutzerdefinierten Typs. Dieser Fehler tritt auf, wenn das Argument ein Objekt mit mehreren GUIDs ist.
Im folgenden Beispiel wird C2788 generiert:
// C2788.cpp
#include <windows.h>
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
// try the following line instead
__uuidof(MyGoodClass);
}