macro IID_PPV_ARGS (combaseapi.h)
Usato per recuperare un puntatore dell'interfaccia, specificando il valore IID dell'interfaccia richiesta automaticamente in base al tipo del puntatore dell'interfaccia usato. In questo modo si evita un errore di codifica comune controllando il tipo del valore passato in fase di compilazione.
Sintassi
void IID_PPV_ARGS(
ppType
);
Parametri
ppType
Indirizzo di un puntatore dell'interfaccia il cui tipo T viene usato per determinare il tipo di oggetto richiesto. La macro restituisce il puntatore dell'interfaccia tramite questo parametro.
Valore restituito
nessuno
Osservazioni
Una sintassi comune nei metodi che recuperano un puntatore di interfaccia (in particolare QueryInterface e CoCreateInstance) include due parametri:
- Parametro [in], normalmente di tipo REFIID, per specificare l'IID dell'interfaccia da recuperare.
- Parametro [out], normalmente di tipo void**, per ricevere il puntatore dell'interfaccia.
Anche se Windows 7 è la prima inclusione di questa macro in un'intestazione pubblica, può essere usata nei sistemi meno recenti definendola manualmente nelle intestazioni del progetto o nel codice sorgente.
Nell'esempio seguente viene illustrato l'uso di IID_PPV_ARGS per creare l'oggetto archivio delle proprietà di memoria usando IPropertyStore.
IPropertyStore *pPropertyStore;
CoCreateInstance(CLSID_PropertyStore, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pPropertyStore));
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [solo app desktop] |
Server minimo supportato | Windows Server 2008 R2 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | combaseapi.h |