Поделиться через


Ошибка компилятора C2787

"идентификатор": с этим объектом не связан GUID

Оператор __uuidof принимает определяемый пользователем тип с присоединенным GUID или объектом такого определяемого пользователем типа. Эта ошибка возникает, когда аргумент является определяемым пользователем типом без GUID.

Следующий пример приводит к возникновению ошибки C2787:

// C2787.cpp
#include <windows.h>
struct F {};

struct __declspec(uuid("00000000-0000-0000-c000-000000000046")) F2;

int main() {
   __uuidof(F);   // C2787
   __uuidof(F2);   // OK
}