idl_quote
Visual C++ uygulamasının geçerli sürümünde desteklenmeyen IDL yapılarını kullanmanıza ve oluşturulan .idl dosyasına geçmelerini sağlar.
Sözdizimi
[ idl_quote(text) ]
Parametreler
text
Microsoft C++ derleyicisinin derleyici hatası döndürmeden oluşturulan .idl dosyasına geçirmesini istediğiniz öznitelik adı.
Açıklamalar
idl_quote C++ özniteliği tek başına öznitelik olarak kullanılıyorsa (kapatma ayracından sonra noktalı virgülle), metin olduğu gibi birleştirilmiş .idl dosyasına yerleştirilir. Bir simgede idl_quote kullanılırsa, metin bu simgenin öznitelik bloğunun içine yerleştirilir.
Örnek
Aşağıdaki kod, desteklenmeyen bir özniteliği nasıl belirtebileceğinizi (desteklenen içinde kullanarak) ve tanımlanmamış bir .idl yapısının nasıl tanımlanıp kullanılacağını gösterir:
// 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 );
};
Bu kod, ve metin girişinin oluşturulan .idl dosyasına yerleştirilmesine neden olurMYFLOT
. MYDUB
name parametresi, oluşturulan .idl dosyasında ada başvuran herhangi bir şeyden önce metnin yerleştirilmesini zorlar. dependencies parametresi, bağımlılık listesi tanımlarını oluşturulan .idl dosyasındaki metinden önce yerleştirilmeye zorlar.
Gereksinimler
Öznitelik bağlamı | Değer |
---|---|
Şunlar için geçerlidir: | Hiçbir yere |
Tekrarlanabilir | Hayır |
Gerekli öznitelikler | Hiçbiri |
Geçersiz öznitelikler | Hiçbiri |
Daha fazla bilgi için bkz . Öznitelik Bağlamları.