__uuidof
, operator
Specyficzne dla firmy Microsoft
Pobiera identyfikator GUID dołączony do wyrażenia.
Składnia
__uuidof (
Wyrażenie)
Uwagi
Wyrażenie może być nazwą typu, wskaźnikiem, odwołaniem lub tablicą tego typu, szablonem wyspecjalizowanym dla tych typów lub zmienną tych typów. Argument jest prawidłowy, o ile kompilator może go użyć do znalezienia dołączonego identyfikatora GUID.
Szczególny przypadek tej funkcji wewnętrznej występuje, gdy jako argument podano wartość 0 lub NULL. W takim przypadku __uuidof
zostanie zwrócony identyfikator GUID składający się z zer.
Użyj tego słowa kluczowego, aby wyodrębnić identyfikator GUID dołączony do:
Uwaga
W kompilacji __uuidof
debugowania zawsze inicjuje obiekt dynamicznie (w czasie wykonywania). W kompilacji __uuidof
wydania można statycznie (w czasie kompilacji) zainicjować obiekt.
Aby uzyskać zgodność z poprzednimi wersjami, jest synonimem, _uuidof
__uuidof
chyba że określono opcję /Za
kompilatora (Wyłącz rozszerzenia języka).
Przykład
Poniższy kod (skompilowany za pomocą biblioteki ole32.lib) wyświetli identyfikator uuid bloku biblioteki utworzonego za pomocą atrybutu modułu:
// 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 zakresie, można użyć __LIBID_
zamiast __uuidof
. Przykład:
StringFromCLSID(__LIBID_, &lpolestr);
END Microsoft Specific
Zobacz też
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla