Condividi tramite


Operatore di __uuidof

Specifici di Microsoft

Recupera il GUID collegato all'espressione.

__uuidof (
   expression 
)

Note

espressione può essere un nome di tipo, un puntatore, un riferimento, oppure una matrice di questo tipo, un modello specifico sui tipi, o di una variabile di questi tipi.L'argomento è valido finché il compilatore possibile utilizzarlo per trovare il GUID collegato.

Un caso speciale di questa funzione intrinseca è quando uno 0 o NULL viene fornito come argomento.in questo caso, __uuidof restituirà un GUID costituita dagli zeri.

Utilizzare questa parola chiave per disegnare il GUID collegato:

  • Un oggetto da uuid attributo esteso.

  • un blocco di libreria creato con modulo attributo.

[!NOTA]

In una build di debug, __uuidof inizializza sempre dinamicamente un oggetto (in runtime).In una build di rilascio, __uuidof essere statico (in fase di compilazione) consentono di inizializzare un oggetto.

Esempio

Il codice seguente (compilato con ole32.lib) visualizzare il uuid di un blocco di libreria creato con l'attributo del modulo:

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

Commenti

Nei casi in cui il nome della libreria non è più in, è possibile utilizzare il __LIBID_ anziché __uuidof.Di seguito è riportato un esempio:

StringFromCLSID(__LIBID_, &lpolestr);

Microsoft FINALE specifico

Vedere anche

Riferimenti

Espressioni con gli operatori unari

Parole chiave C++