Udostępnij za pośrednictwem


idl_quote

Umożliwia korzystanie z konstrukcji IDL, które nie są obsługiwane w bieżącej wersji języka Visual C++ i mają je przekazywane do wygenerowanego pliku idl.

Składnia

[ idl_quote(text) ]

Parametry

text
Nazwa atrybutu, którą zamierzasz przekazać kompilatorowi Microsoft C++ do wygenerowanego pliku idl bez zwracania błędu kompilatora.

Uwagi

Jeśli atrybut idl_quote C++ jest używany jako atrybut autonomiczny (ze średnikiem po nawiasie zamykającym), tekst jest umieszczany w scalanym pliku idl, tak jak to jest. Jeśli idl_quote jest używany na symbolu, tekst jest umieszczany w bloku atrybutu dla tego symbolu.

Przykład

Poniższy kod pokazuje, jak można określić nieobsługiwany atrybut (przy użyciu metody w, który jest obsługiwany) oraz jak zdefiniować i użyć niezdefiniowanej konstrukcji idl:

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

Ten kod powodujeMYFLOT, że wpis tekstowy i MYDUB zostanie umieszczony w wygenerowanych plikach idl. Parametr name wymusza umieszczenie tekstu przed wszystkimi elementami, które odwołują się do nazwy w wygenerowanych plikach idl. Parametr dependencies wymusza umieszczenie definicji listy zależności przed tekstem w wygenerowany plik idl.

Wymagania

Kontekst atrybutu Wartość
Dotyczy Gdziekolwiek
Powtarzalne Nie.
Wymagane atrybuty Brak
Nieprawidłowe atrybuty Brak

Aby uzyskać więcej informacji, zobacz Konteksty atrybutów.

Zobacz też

Atrybuty IDL
Oddzielne atrybuty