idl_quote

Consente di usare costrutti IDL non supportati nella versione corrente di Visual C++ e di passarli al file con estensione idl generato.

Sintassi

[ idl_quote(text) ]

Parametri

Testo
Nome dell'attributo che si intende passare dal compilatore Microsoft C++ al file con estensione idl generato senza restituire un errore del compilatore.

Osservazioni:

Se l'attributo idl_quote C++ viene usato come attributo autonomo (con un punto e virgola dopo la parentesi chiusa), il testo viene inserito nel file con estensione idl unito così come è. Se idl_quote viene usato su un simbolo, il testo viene inserito all'interno del blocco di attributi per tale simbolo.

Esempio

Il codice seguente illustra come specificare un attributo non supportato (usando in, supportato) e come definire e usare un costrutto .idl non definito:

// cpp_attr_ref_idl_quote.cpp
// compile with: /LD
#include <unknwn.h>
[module(name="MyLibrary")];

[export]
struct MYFLOT {
   int i;
};

[export]
struct MYDUB {
   int i;
};

[idl_quote("typedef union _S1_TYPE switch (long l1) U1_TYPE { case 1024: \
struct MYFLOT f1; case 2048: struct MYDUB d2; } S1_TYPE;") ];

typedef struct _S1_TYPE {
   long l1;

union {
   MYFLOT f1; MYDUB d2; } U1_TYPE;
} S1_TYPE;

[uuid("2F5F63F1-16DA-11d2-9E7B-00C04FB926DA"), object]
__interface IStatic{
   HRESULT Func1([idl_quote("in")] int i);
   HRESULT func( S1_TYPE* myStruct );
};

Questo codice fa sì MYFLOT che e MYDUB la voce di testo vengano inseriti nel file con estensione idl generato. Il parametro name forza l'immissione del testo prima di qualsiasi elemento che faccia riferimento al nome nel file con estensione idl generato. Il parametro dependencies forza l'inserimento delle definizioni dell'elenco delle dipendenze prima del testo nel file con estensione idl generato.

Requisiti

Contesto attributo Valore
Si applica a Ovunque
Ripetibile No
Attributi obbligatori None
Attributi non validi None

Per altre informazioni, vedere Contesti di attributi.

Vedi anche

Attributi IDL
Attributi autonomi