Udostępnij za pośrednictwem


operator __uuidof

Programu Microsoft

Pobiera identyfikator GUID, dołączony do wyrażenia.

__uuidof (
   expression 
)

Uwagi

Wyrażenie może być nazwa typu, wskaźnik, odwołanie lub tablicy tego typu, szablon wyspecjalizowane na te typy lub zmiennej z tych typów.Argument jest prawidłowy tak długo, jak kompilator można go użyć do znajdowania dołączony identyfikator GUID.

Szczególny przypadek, w tym wewnętrznych jest, gdy albo 0 lub NULL jest podany jako argument.W tym przypadku __uuidof zwróci identyfikator GUID składa zer.

Użyć tego słowa kluczowego, aby wyodrębnić identyfikatora GUID dołączonych do:

  • Obiekt przez uuid rozszerzonych atrybutów.

  • Blok biblioteki utworzone za pomocą Moduł atrybut.

[!UWAGA]

W trybie debugowania __uuidof zawsze inicjuje obiekt dynamicznie (w czasie wykonywania).W wydanej kompilacji __uuidof statycznie (w czasie kompilacji) można zainicjować obiektu.

Przykład

Poniższy kod (skompilowany z ole32.lib) będą wyświetlane uuid bloku biblioteki, utworzone za pomocą atrybutu moduł:

// expre_uuidof.cpp
// compile with: ole32.lib
#include "stdio.h"
#include "windows.h"

[emitidl];
[module(name="MyLib")];
[export]
struct stuff {
   int i;
};

int main() {
   LPOLESTR lpolestr;
   StringFromCLSID(__uuidof(MyLib), &lpolestr);
   wprintf_s(L"%s", lpolestr);
   CoTaskMemFree(lpolestr);
}

Komentarze

W przypadkach, gdy nazwa biblioteki nie jest już w zakres, można użyć __LIBID_ zamiast __uuidof.Na przykład:

StringFromCLSID(__LIBID_, &lpolestr);

KONIEC Microsoft szczególne

Zobacz też

Informacje

Wyrażenia z operatory jednoargumentowe

Słów kluczowych języka C++