Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sınıf türü kaydırarak VARIANT depolanan veri türünü belirten bir üye sağlar.
Sözdizimi
class CComVariant : public tagVARIANT
Üyeler
Ortak oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
CComVariant::CComVariant |
Oluşturucu. |
CComVariant::~CComVariant |
Yok edici. |
Genel yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
CComVariant::Attach |
Nesnesine CComVariant bir VARIANT ekler. |
CComVariant::ChangeType |
CComVariant Nesneyi yeni bir türe dönüştürür. |
CComVariant::Clear |
CComVariant Nesneyi temizler. |
CComVariant::Copy |
nesnesine CComVariant kopyalarVARIANT. |
CComVariant::CopyTo |
Nesnenin CComVariant içeriğini kopyalar. |
CComVariant::Detach |
Temel alınanı VARIANT nesneden CComVariant ayırır. |
CComVariant::GetSize |
Nesnenin içeriğinin CComVariant bayt sayısı cinsinden boyutu döndürür. |
CComVariant::ReadFromStream |
Bir akıştan bir VARIANT yükler. |
CComVariant::SetByRef |
CComVariant nesnesini başlatır ve üyesini vt olarak VT_BYREFayarlar. |
CComVariant::WriteToStream |
Temel alınanı VARIANT bir akışa kaydeder. |
Genel işleçler
| Operator | Açıklama |
|---|---|
CComVariant::operator < |
Nesnenin belirtilen VARIANTdeğerinden CComVariant küçük olup olmadığını gösterir. |
CComVariant::operator > |
Nesnenin belirtilen VARIANTdeğerinden CComVariant büyük olup olmadığını gösterir. |
CComVariant::operator != |
Nesnenin CComVariant belirtilen VARIANTdeğerine eşit olup olmadığını gösterir. |
CComVariant::operator = |
Nesneye CComVariant bir değer atar. |
CComVariant::operator == |
Nesnenin CComVariant belirtilen VARIANTdeğerine eşit olup olmadığını gösterir. |
Açıklamalar
CComVariantVARIANT bir birleşimden ve birleşimde depolanan verilerin türünü belirten bir üyeden oluşan ve VARIANTARG türünü sarmalar. VARIANTs genellikle Otomasyon'da kullanılır.
CComVariant türünden VARIANT türetilir, böylece herhangi bir VARIANT yerde kullanılabilir. Örneğin, bir öğesinin türünü CComVariant ayıklamak için makroyu V_VT kullanabilir veya bir ile VARIANTolduğu gibi üyeye vt doğrudan erişebilirsiniz.
Devralma hiyerarşisi
Gereksinimler
Üstbilgi: atlcomcli.h
CComVariant::Attach
Nesnenin geçerli içeriğini CComVariant güvenli bir şekilde temizler, içeriğini pSrc bu nesneye kopyalar, ardından değişken türünü pSrc olarak VT_EMPTYayarlar.
HRESULT Attach(VARIANT* pSrc);
Parametreler
pSrc
[in] VARIANT Nesneye eklenecek öğesini gösterir.
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
tarafından pSrc tutulan verilerin sahipliği nesneye CComVariant aktarılır.
CComVariant::CComVariant
Her oluşturucu, Win32 işlevini çağırarak VariantInit veya nesnenin değerini ve türünü geçirilen parametrelere göre ayarlayarak nesnenin güvenli bir şekilde başlatılmasını CComVariant işler.
CComVariant() throw();
CComVariant(const CComVariant& varSrc);
CComVariant(const VARIANT& varSrc);
CComVariant(LPCOLESTR lpszSrc);
CComVariant(LPCSTR lpszSrc);
CComVariant(bool bSrc);
CComVariant(BYTE nSrc) throw();
CComVariant(int nSrc, VARTYPE vtSrc = VT_I4) throw();
CComVariant(unsigned int nSrc, VARTYPE vtSrc = VT_UI4) throw();
CComVariant(shor nSrc) throw();
CComVariant(unsigned short nSrc) throw();
CComVariant(long nSrc, VARTYPE vtSrc = VT_I4) throw();
CComVariant(unsigned long nSrc) throw();
CComVariant(LONGLONG nSrc) throw();
CComVariant(ULONGLONG nSrc) throw();
CComVariant(float fltSrc) throw();
CComVariant(double dblSrc, VARTYPE vtSrc = VT_R8) throw();
CComVariant(CY cySrc) throw();
CComVariant(IDispatch* pSrc) throw();
CComVariant(IUnknown* pSrc) throw();
CComVariant(const SAFEARRAY* pSrc);
CComVariant(char cSrc) throw();
CComVariant(const CComBSTR& bstrSrc);
Parametreler
varSrc
[in] CComVariant veya VARIANT nesnesini başlatmak CComVariant için kullanılır. Kaynak değişkenin içeriği dönüştürme olmadan hedefe kopyalanır.
lpszSrc
[in] Nesneyi başlatmak CComVariant için kullanılan karakter dizesi. Oluşturucunun sürümüne LPCOLESTR sıfır sonlandırılan geniş (Unicode) karakter dizesini veya bir ANSI dizesini sürüme LPCSTR geçirebilirsiniz. Her iki durumda da, dize kullanılarak SysAllocStringayrılmış bir Unicode'a BSTR dönüştürülür. Nesnenin CComVariant türü şeklindedir VT_BSTR.
bSrc
[in] bool nesnesini başlatmak CComVariant için kullanılır. Bağımsız bool değişken, depolanmadan önce öğesine VARIANT_BOOL dönüştürülür. Nesnenin CComVariant türü şeklindedir VT_BOOL.
nSrc
[in] intnesnesini LONGLONGULONGLONGunsigned longlongshortunsigned shortBYTEbaşlatmak CComVariant için kullanılan , veya .unsigned int Nesnenin CComVariant türü sırasıyla , VT_UI1, VT_I2, VT_I4, VT_I8, VT_UI8, VT_UI2, VT_UI4veya VT_UI4şeklindedirVT_I4.
vtSrc
[in] Değişkenin türü. İlk parametre olduğunda intgeçerli türler ve VT_INTolurVT_I4. İlk parametre olduğunda longgeçerli türler ve VT_ERRORolurVT_I4. İlk parametre olduğunda doublegeçerli türler ve VT_DATEolurVT_R8. İlk parametre olduğunda unsigned intgeçerli türler ve VT_UINTolurVT_UI4.
fltSrc
[in] float nesnesini başlatmak CComVariant için kullanılır. Nesnenin CComVariant türü şeklindedir VT_R4.
dblSrc
[in] double nesnesini başlatmak CComVariant için kullanılır. Nesnenin CComVariant türü şeklindedir VT_R8.
cySrc
[in] CY nesnesini başlatmak CComVariant için kullanılır. Nesnenin CComVariant türü şeklindedir VT_CY.
pSrc
[in] IDispatch Nesneyi başlatmak için kullanılan veya IUnknown işaretçisi CComVariant . AddRef , arabirim işaretçisinde çağrılır. Nesnenin CComVariant türü sırasıyla veya VT_UNKNOWNşeklindedirVT_DISPATCH.
Veya nesneyi SAFERRAY başlatmak CComVariant için kullanılan işaretçi. öğesinin bir SAFEARRAY kopyası nesnesinde CComVariant depolanır. Nesnenin CComVariant türü, ve VT_ARRAYöğesinin özgün türünün SAFEARRAY bir bileşimidir.
cSrc
[in] char nesnesini başlatmak CComVariant için kullanılır. Nesnenin CComVariant türü şeklindedir VT_I1.
bstrSrc
[in] BSTR nesnesini başlatmak CComVariant için kullanılır. Nesnenin CComVariant türü şeklindedir VT_BSTR.
Açıklamalar
Yıkıcı, öğesini çağırarak CComVariant::Cleartemizlemeyi yönetir.
CComVariant::~CComVariant
Yok edici.
~CComVariant() throw();
Açıklamalar
Bu yöntem, çağrılarak CComVariant::Cleartemizlemeyi yönetir.
CComVariant::ChangeType
CComVariant Nesneyi yeni bir türe dönüştürür.
HRESULT ChangeType(VARTYPE vtNew, const VARIANT* pSrc = NULL);
Parametreler
vtNew
[in] Nesne için CComVariant yeni tür.
pSrc
[in] Değeri yeni türe VARIANT dönüştürülen öğesinin işaretçisi. Varsayılan değer olan NULL, nesnenin CComVariant yerinde dönüştürüldüğü anlamına gelir.
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
için pSrcChangeType bir değer geçirirseniz, dönüştürmenin kaynağı olarak bunu VARIANT kullanır. Aksi takdirde, CComVariant nesne kaynaktır.
CComVariant::Clear
CComVariant Win32 işlevini çağırarak VariantClear nesnesini temizler.
HRESULT Clear();
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
Yıkıcı otomatik olarak öğesini çağırır Clear.
CComVariant::Copy
CComVariant Nesnesini serbest ve ardından belirtilen VARIANTöğesinin bir kopyasını atar.
HRESULT Copy(const VARIANT* pSrc);
Parametreler
pSrc
[in] Kopyalanacak öğesinin VARIANT işaretçisi.
Dönüş değeri
Standart HRESULT bir değer.
CComVariant::CopyTo
Nesnenin CComVariant içeriğini kopyalar.
HRESULT CopyTo(BSTR* pstrDest);
Parametreler
pstrDest
BSTR Nesnenin içeriğinin bir kopyasını alacak bir öğesine işaret ederCComVariant.
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
CComVariant Nesnesi türünde VT_BSTRolmalıdır.
CComVariant::Detach
Temel alınan VARIANT öğesini nesneden CComVariant ayırır ve nesnenin türünü olarak VT_EMPTYayarlar.
HRESULT Detach(VARIANT* pDest);
Parametreler
pDest
[out] Nesnenin temel VARIANT alınan değerini döndürür.
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
tarafından pDest başvuruda bulunan öğesinin VARIANT içeriği, çağıran CComVariant nesnenin değeri ve türü atanmadan önce otomatik olarak temizlenir.
CComVariant::GetSize
Basit-sabit boyutlu VARIANTs için, bu yöntem temel alınan veri türü artı sizeof(VARTYPE)değerini döndürürsizeof.
ULONG GetSize() const;
Dönüş değeri
Nesnenin geçerli içeriğinin CComVariant bayt cinsinden boyutu.
Açıklamalar
VARIANT bir arabirim işaretçisi içeriyorsa, GetSize veya IPersistStreamInitiçin IPersistStream sorgular. Başarılı olursa, dönüş değeri artı sizeof(CLSID) ve sizeof(VARTYPE)tarafından GetSizeMax döndürülen değerin düşük sıralı 32 bitidir. Arabirim işaretçisi iseNULL, GetSize artı sizeof(VARTYPE)döndürürsizeof(CLSID). Toplam boyut değerinden ULONG_MAXGetSize büyükse, hata belirten değerini döndürürsizeof(VARTYPE).
Diğer tüm durumlarda, geçerli VARIANTtüründen VT_BSTR geçici VARIANT bir zorlama yapılır. Bunun BSTR uzunluğu, dizenin uzunluğunun ve dizenin uzunluğunun yanı sıra karakterin NULL boyutu artı sizeof(VARTYPE)olarak hesaplanır. türüne VARIANT zorlama gerçekleştirilemiyorsa VARIANT VT_BSTRdöndürür GetSize sizeof(VARTYPE).
Bu yöntem tarafından döndürülen boyut, başarılı koşullar altında tarafından kullanılan bayt sayısıyla CComVariant::WriteToStream eşleşir.
CComVariant::operator =
Nesneye CComVariant bir değer ve karşılık gelen tür atar.
CComVariant& operator=(const CComVariant& varSrc);
CComVariant& operator=(const VARIANT& varSrc);
CComVariant& operator=(const CComBSTR& bstrSrc);
CComVariant& operator=(LPCOLESTR lpszSrc);
CComVariant& operator=(LPCSTR lpszSrc);
CComVariant& operator=(bool bSrc);
CComVariant& operator=(BYTE nSrc) throw();
CComVariant& operator=int nSrc) throw();
CComVariant& operator=(unsigned int nSrc) throw();
CComVariant& operator=(short nSrc) throw();
CComVariant& operator=(unsigned short nSrc) throw();
CComVariant& operator=(long nSrc) throw();
CComVariant& operator=(unsigned long nSrc) throw();
CComVariant& operator=(LONGLONG nSrc) throw();
CComVariant& operator=(ULONGLONG nSrc) throw();
CComVariant& operator=(float fltSrc) throw();
CComVariant& operator=(double dblSrc) throw();
CComVariant& operator=(CY cySrc) throw();
CComVariant& operator=(IDispatch* pSrc) throw();
CComVariant& operator=(IUnknown* pSrc) throw();
CComVariant& operator=(const SAFEARRAY* pSrc);
CComVariant& operator=(char cSrc) throw();
Parametreler
varSrc
[in] CComVariant nesnesine atanacak CComVariant veyaVARIANT. Kaynak değişkenin içeriği dönüştürme olmadan hedefe kopyalanır.
bstrSrc
[in] BSTR nesnesine atanacak CComVariant . Nesnenin CComVariant türü şeklindedir VT_BSTR.
lpszSrc
[in] Nesneye atanacak CComVariant karakter dizesi. sıfır sonlandırılan geniş (Unicode) karakter dizesini işlecin sürümüne LPCOLESTR veya ANSI dizesini sürüme LPCSTR geçirebilirsiniz. Her iki durumda da, dize kullanılarak SysAllocStringayrılmış bir Unicode'a BSTR dönüştürülür. Nesnenin CComVariant türü şeklindedir VT_BSTR.
bSrc
[in] bool nesnesine atanacak CComVariant . Bağımsız bool değişken, depolanmadan önce öğesine VARIANT_BOOL dönüştürülür. Nesnenin CComVariant türü şeklindedir VT_BOOL.
nSrc
[in] intlongLONGLONGBYTEunsigned shortULONGLONGshortNesneye atanacak CComVariant , , unsigned longveya.unsigned int Nesnenin CComVariant türü sırasıyla , VT_UI1, VT_I2, VT_I4, VT_I8, VT_UI8, VT_UI2, VT_UI4veya VT_UI4şeklindedirVT_I4.
fltSrc
[in] float nesnesine atanacak CComVariant . Nesnenin CComVariant türü şeklindedir VT_R4.
dblSrc
[in] double nesnesine atanacak CComVariant . Nesnenin CComVariant türü şeklindedir VT_R8.
cySrc
[in] CY nesnesine atanacak CComVariant . Nesnenin CComVariant türü şeklindedir VT_CY.
pSrc
[in] IDispatch Nesneye atanacak veya IUnknown işaretçisi CComVariant . AddRef , arabirim işaretçisinde çağrılır. Nesnenin CComVariant türü sırasıyla veya VT_UNKNOWNşeklindedirVT_DISPATCH.
Veya nesneye atanacak CComVariant bir SAFEARRAY işaretçi. öğesinin bir SAFEARRAY kopyası nesnesinde CComVariant depolanır. Nesnenin CComVariant türü, ve VT_ARRAYöğesinin özgün türünün SAFEARRAY bir bileşimidir.
cSrc
[in] Nesneye atanacak CComVariant karakter. Nesnenin CComVariant türü şeklindedir VT_I1.
CComVariant::operator ==
Nesnenin CComVariant belirtilen VARIANTdeğerine eşit olup olmadığını gösterir.
bool operator==(const VARIANT& varSrc) const throw();
Açıklamalar
Değerinin ve türününvarSrc, nesnenin sırasıyla değerine ve türüne CComVariant eşit olup olmadığını döndürürTRUE. Tersi durumda FALSE. işleç, karşılaştırmayı gerçekleştirmek için kullanıcının varsayılan yerel ayarını kullanır.
işleci yalnızca değişken türlerinin değerini karşılaştırır. Dizeleri, tamsayıları ve kayan noktaları karşılaştırır, ancak dizileri veya kayıtları karşılaştırmaz.
CComVariant::operator !=
Nesnenin CComVariant belirtilen VARIANTdeğerine eşit olup olmadığını gösterir.
bool operator!=(const VARIANT& varSrc) const throw();
Açıklamalar
Değeri veya türü varSrc nesnenin değerine veya türüne eşit CComVariant değilse döndürürTRUE. Tersi durumda FALSE. işleç, karşılaştırmayı gerçekleştirmek için kullanıcının varsayılan yerel ayarını kullanır.
işleci yalnızca değişken türlerinin değerini karşılaştırır. Dizeleri, tamsayıları ve kayan noktaları karşılaştırır, ancak dizileri veya kayıtları karşılaştırmaz.
CComVariant::operator <
Nesnenin belirtilen VARIANTdeğerinden CComVariant küçük olup olmadığını gösterir.
bool operator<(const VARIANT& varSrc) const throw();
Açıklamalar
nesnesinin değeri değerinden CComVariant küçükse varSrcdöndürürTRUE. Tersi durumda FALSE. işleç, karşılaştırmayı gerçekleştirmek için kullanıcının varsayılan yerel ayarını kullanır.
CComVariant::operator >
Nesnenin belirtilen VARIANTdeğerinden CComVariant büyük olup olmadığını gösterir.
bool operator>(const VARIANT& varSrc) const throw();
Açıklamalar
nesnesinin değeri değerinden CComVariant büyükse varSrcdöndürürTRUE. Tersi durumda FALSE. işleç, karşılaştırmayı gerçekleştirmek için kullanıcının varsayılan yerel ayarını kullanır.
CComVariant::ReadFromStream
Temel alınan VARIANT VARIANT değerini belirtilen akışta bulunan değerine ayarlar.
HRESULT ReadFromStream(IStream* pStream);
Parametreler
pStream
[in] Verileri içeren akış üzerindeki arabirimin işaretçisi IStream .
Dönüş değeri
Standart HRESULT bir değer.
Açıklamalar
ReadToStream için önceki bir çağrı gerektirir WriteToStream.
CComVariant::SetByRef
CComVariant nesnesini başlatır ve üyesini vt olarak VT_BYREFayarlar.
template < typename T >
void SetByRef(T* pT) throw();
Parametreler
T
VARIANTtürü, örneğin, BSTR, intveya char.
pT
Nesneyi başlatmak CComVariant için kullanılan işaretçi.
Açıklamalar
SetByRef, nesnesini işaretçiye CComVariant pT başlatan ve üyeyi olarak VT_BYREFayarlayan vt bir işlev şablonudur. Örneğin:
CComVariant var;
int nData = 10;
var.SetByRef(&nData);
CComVariant::WriteToStream
Temel alınanı VARIANT bir akışa kaydeder.
HRESULT WriteToStream(IStream* pStream);
Parametreler
pStream
[in] Akış üzerindeki arabirimin IStream işaretçisi.
Dönüş değeri
Standart HRESULT bir değer.