다음을 통해 공유


컴파일러 오류 C2788

'identifier': 이 개체와 연결된 GUID가 두 개 이상입니다.

__uuidof 연산자는 GUID가 연결된 사용자 정의 형식 또는 이러한 사용자 정의 형식의 개체를 사용합니다. 이 오류는 인수가 GUID가 여러 대인 개체일 때 발생합니다.

다음 샘플에서는 C2788을 생성합니다.

// 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);
}