-1
我有一個IDL file限定數目的struct
像這樣
typedef[uuid(68D81983-793D-43BE-AC16-C74254C90607)] struct Foo
{
// some members
} Foo;
在編譯時(使用Visual Studio 2013)它生成一個.h
文件,其中相應的struct
被翻譯爲
typedef /* [uuid] */ DECLSPEC_UUID("68D81983-793D-43BE-AC16-C74254C90607") struct Foo
{
// some members
} Foo;
宏DECLSPEC_UUID
擴展到
#define DECLSPEC_UUID(x) __declspec(uuid(x))
問題
我怎樣才能檢索到別處struct
的UUID?
包括生成的頭之後,我試圖用__uuidof
static const auto idFoo = __uuidof(Foo);
但後來我得到一個編譯錯誤
error C2787: 'Foo' : no GUID has been associated with this object
我不知道標記這是重複的,但這個答案似乎覆蓋了這個偉大的deatil:https://stackoverflow.com/questions/23977244/how-can-i-define-an -uuid換一個級和使用的-uuidof-內式相同的方式換克 – Chad