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.
VARIANT veri türünü kapsüller.
Sözdizimi
class COleVariant : public tagVARIANT
Üyeler
Ortak Oluşturucular
| Veri Akışı Adı | Açıklama |
|---|---|
| COleVariant::COleVariant | Bir COleVariant nesne oluşturur. |
Genel Yöntemler
| Veri Akışı Adı | Açıklama |
|---|---|
| COleVariant::Attach | bir DEĞIŞKEN ekler COleVariant. |
| COleVariant::ChangeType | Bu COleVariant nesnenin değişken türünü değiştirir. |
| COleVariant::Clear | Bu COleVariant nesneyi temizler. |
| COleVariant::D etach | bir VARIANT'ı uygulamasından COleVariant ayırır ve VARIANT değerini döndürür. |
| COleVariant::GetByteArrayFromVariantArray | Var olan bir değişken diziden bayt dizisi alır. |
| COleVariant::SetString | Dizeyi genellikle ANSI olarak belirli bir türe ayarlar. |
Ortak İşleçler
| Veri Akışı Adı | Açıklama |
|---|---|
| COleVariant::operator LPCVARIANT | Bir COleVariant değeri değerine LPCVARIANTdönüştürür. |
| COleVariant::operator LPVARIANT | Bir COleVariant nesneyi içine LPVARIANTdönüştürür. |
| COleVariant::operator = | Bir COleVariant değeri kopyalar. |
| COleVariant::operator == | İki COleVariant değeri karşılaştırır. |
COleVariant::operator <<, COleVariant::operator >> |
veya COleVariant öğesine CArchive bir CDumpContext değer verir ve öğesinden COleVariantbir CArchive nesne ekler. |
Açıklamalar
Bu veri türü OLE otomasyonunda kullanılır. Özellikle, DISPPARAMS yapısı bir DEĞIŞKEN yapıları dizisine yönelik bir işaretçi içerir. IDispatchDISPPARAMS::Invoke'a parametre geçirmek için bir yapı kullanılır.
Not
Bu sınıf yapısından VARIANT türetilir. Bu, öğesini COleVariant çağıran VARIANT bir parametresi geçirebileceğiniz ve yapısının veri üyelerinin öğesinin VARIANT erişilebilir veri üyeleri COleVariantolduğu anlamına gelir.
İlgili iki MFC sınıfı COleCurrency ve COleDateTime, CURRENCY () ve DATEVT_CY (VT_DATE) değişken veri türlerini kapsüller.
COleVariant sınıfı DAO sınıflarında yaygın olarak kullanılır; bu sınıfın tipik kullanımı için bu sınıflara bakın, örneğin CDaoQueryDef ve CDaoRecordset.
Daha fazla bilgi için windows SDK'sında VARIANT, CURRENCY, DISPPARAMS ve IDispatch::Invoke girişlerine bakın.
Sınıfı ve OLE otomasyonundaki kullanımı hakkında COleVariant daha fazla bilgi için Otomasyon makalesindeki "OLE Otomasyonunda Parametreleri Geçirme" bölümüne bakın.
Devralma Hiyerarşisi
tagVARIANT
COleVariant
Gereksinimler
Üst bilgi: afxdisp.h
COleVariant::Attach
Verilen VARIANT nesnesini geçerli COleVariant nesneye eklemek için bu işlevi çağırın.
void Attach(VARIANT& varSrc);
Parametreler
varSrc
Geçerli VARIANT nesneye eklenecek mevcut COleVariant bir nesne.
Açıklamalar
Bu işlev varSrc'nin VARTYPE'ını VT_EMPTY olarak ayarlar.
Daha fazla bilgi için Bkz. Windows SDK'sında VARIANT ve VARENUM girdileri.
COleVariant::COleVariant
Bir COleVariant nesne oluşturur.
COleVariant();
COleVariant(const VARIANT& varSrc);
COleVariant(const COleVariant& varSrc);
COleVariant(LPCVARIANT pSrc);
COleVariant(LPCTSTR lpszSrc);
COleVariant(LPCTSTR lpszSrc, VARTYPE vtSrc);
COleVariant(CString& strSrc);
COleVariant(BYTE nSrc);
COleVariant(short nSrc, VARTYPE vtSrc = VT_I2);
COleVariant(long lSrc,VARTYPE vtSrc = VT_I4);
COleVariant(const COleCurrency& curSrc);
COleVariant(float fltSrc);
COleVariant(double dblSrc);
COleVariant(const COleDateTime& timeSrc);
COleVariant(const CByteArray& arrSrc);
COleVariant(const CLongBinary& lbSrc);
COleVariant(LPCITEMIDLIST pidl);
Parametreler
varSrc
Yeni COleVariant nesneye kopyalanacak mevcut VARIANT veya COleVariant nesne.
pSrc
Yeni VARIANT nesneye kopyalanacak bir COleVariant nesnenin işaretçisi.
lpszSrc
Yeni COleVariant nesneye kopyalanacak null olarak sonlandırılan bir dize.
vtSrc
VARTYPE Yeni COleVariant nesne için.
nSrc, lSrc Yeni COleVariant nesneye kopyalanacak sayısal değer.
vtSrc
VARTYPE Yeni COleVariant nesne için.
fltSrc, dblSrc
Yeni COleVariant nesneye kopyalanacak sayısal değer.
pidl
Yeni nesneye COleVariant yapısının işaretçisi.
Açıklamalar
Tüm bu oluşturucular, belirtilen değere başlatılan yeni COleVariant nesneler oluşturur. Bu oluşturucuların her birinin kısa bir açıklaması aşağıdadır.
COleVariant( ) VT_EMPTY boş
COleVariantbir nesne oluşturur.COleVariant(varSrc) Varolan
VARIANTbir veyaCOleVariantnesneyi kopyalar. Değişken türü korunur.COleVariant(pSrc) Varolan
VARIANTbir veyaCOleVariantnesneyi kopyalar. Değişken türü korunur.COleVariant(lpszSrc) Yeni nesneye VT_BSTR (UNICODE) bir dize kopyalar.
COleVariant(lpszSrc,vtSrc) Yeni nesneye bir dize kopyalar. vtSrc parametresi VT_BSTR (UNICODE) veya VT_BSTRT (ANSI) olmalıdır.
COleVariant(strSrc) Yeni nesneye VT_BSTR (UNICODE) bir dize kopyalar.
COleVariant(nSrc) 8 bitlik bir tamsayıyı VT_UI1 yeni nesneye kopyalar.
COleVariant(nSrc,vtSrc) Yeni nesneye 16 bitlik bir tamsayı (veya Boole değeri) kopyalar. vtSrc parametresi VT_I2 veya VT_BOOL olmalıdır.
COleVariant(lSrc,vtSrc) Yeni nesneye 32 bitlik bir tamsayı (veya SCODE değeri) kopyalar. vtSrc parametresi VT_I4, VT_ERROR veya VT_BOOL olmalıdır.
COleVariant(curSrc) Yeni nesneye VT_CY bir
COleCurrencydeğer kopyalar.COleVariant(fltSrc) 32 bit kayan nokta değerini yeni nesneye kopyalar VT_R4.
COleVariant(dblSrc) 64 bit kayan nokta değerini yeni nesneye kopyalar VT_R8.
COleVariant(timeSrc) Yeni nesneye VT_DATE bir
COleDateTimedeğer kopyalar.COleVariant(arrSrc) Bir
CByteArraynesneyi yeni nesneye kopyalar VT_EMPTY.COleVariant(lbSrc) Bir
CLongBinarynesneyi yeni nesneye kopyalar VT_EMPTY.
SCODE hakkında daha fazla bilgi için bkz . Windows SDK'sında COM Hata Kodlarının Yapısı.
COleVariant::ChangeType
Bu COleVariant nesnedeki değişken değerin türünü dönüştürür.
void ChangeType(VARTYPE vartype, LPVARIANT pSrc = NULL);
Parametreler
vartype
Bu COleVariant nesne için VARTYPE.
pSrc
Dönüştürülecek VARIANT nesnesinin işaretçisi. Bu değer NULL ise, dönüştürme için kaynak olarak bu COleVariant nesne kullanılır.
Açıklamalar
Daha fazla bilgi için Bkz. Windows SDK'sında VARIANT, VARENUM ve VariantChangeType girdileri.
COleVariant::Clear
öğesini VARIANTtemizler.
void Clear();
Açıklamalar
Bu, bu nesnenin VARTYPE'ını VT_EMPTY olarak ayarlar. Yıkıcı COleVariant bu işlevi çağırır.
Daha fazla bilgi için bkz VARIANT. Windows SDK'sında , VARTYPE ve VariantClear girdiler.
COleVariant::D etach
Temel alınan VARIANT nesnesini bu COleVariant nesneden ayırır.
VARIANT Detach();
Açıklamalar
Bu işlev, bu COleVariant nesnenin VARTYPE'ını VT_EMPTY olarak ayarlar.
Not
çağrısı Detachyaptıktan sonra, sonuçta elde VariantClear edilen yapıyı çağırmak VARIANT çağıranın sorumluluğundadır.
Daha fazla bilgi için Windows SDK'sında VARIANT, VARENUM ve VariantClear girişlerine bakın.
COleVariant::GetByteArrayFromVariantArray
Var olan bir değişken diziden bayt dizisi alır
void GetByteArrayFromVariantArray(CByteArray& bytes);
Parametreler
Bayt
Var olan bir CByteArray nesnesine başvuru.
COleVariant::operator LPCVARIANT
Bu atama işleci, değeri bu VARIANT nesneden kopyalanan bir COleVariant yapı döndürür.
operator LPCVARIANT() const;
Açıklamalar
COleVariant::operator LPVARIANT
Bu nesnenin temel alınan VARIANT yapısına erişmek için bu COleVariant atama işlecini çağırın.
operator LPVARIANT();
Açıklamalar
Dikkat
Bu işlev tarafından döndürülen işaretçi tarafından erişilen yapıdaki VARIANT değerin değiştirilmesi, bu COleVariant nesnenin değerini değiştirir.
COleVariant::operator =
Bu aşırı yüklenmiş atama işleçleri kaynak değeri bu COleVariant nesneye kopyalar.
const COleVariant& operator=(const VARIANT& varSrc);
const COleVariant& operator=(LPCVARIANT pSrc);
const COleVariant& operator=(const COleVariant& varSrc);
const COleVariant& operator=(const LPCTSTR lpszSrc);
const COleVariant& operator=(const CString& strSrc);
const COleVariant& operator=(BYTE nSrc);
const COleVariant& operator=(short nSrc);
const COleVariant& operator=(long lSrc);
const COleVariant& operator=(const COleCurrency& curSrc);
const COleVariant& operator=(float fltSrc);
const COleVariant& operator=(double dblSrc);
const COleVariant& operator=(const COleDateTime& dateSrc);
const COleVariant& operator=(const CByteArray& arrSrc);
const COleVariant& operator=(const CLongBinary& lbSrc);
Açıklamalar
Her işlecin kısa bir açıklaması şu şekildedir:
operator =(varSrc) Var olan bir VARIANT'ı veya
COleVariantnesneyi bu nesneye kopyalar.operator =(pSrc) pSrc tarafından erişilen VARIANT nesnesini bu nesneye kopyalar.
operator =(lpszSrc) Null olarak sonlandırılan bir dizeyi bu nesneye kopyalar ve VARTYPE değerini VT_BSTR olarak ayarlar.
operator =(strSrc) Bir CString nesnesini bu nesneye kopyalar ve VARTYPE değerini VT_BSTR olarak ayarlar.
operator =(nSrc) Bu nesneye 8 veya 16 bitlik bir tamsayı değeri kopyalar. nSrc 8 bitlik bir değerse, bunun VARTYPE değeri VT_UI1 olarak ayarlanır. nSrc 16 bitlik bir değerse ve bunun VARTYPE değeri VT_BOOL ise korunur; aksi takdirde VT_I2 olarak ayarlanır.
operator =(lSrc) 32 bitlik bir tamsayı değerini bu nesneye kopyalar. Bunun VARTYPE'ı VT_ERROR ise tutulur; aksi takdirde, VT_I4 olarak ayarlanır.
operator =(curSrc) COleCurrency nesnesini bu nesneye kopyalar ve VARTYPE değerini VT_CY olarak ayarlar.
operator =(fltSrc) 32 bit kayan nokta değerini bu nesneye kopyalar ve VARTYPE değerini VT_R4 olarak ayarlar.
operator =(dblSrc) 64 bit kayan nokta değerini bu nesneye kopyalar ve VARTYPE değerini VT_R8 olarak ayarlar.
operator =(dateSrc) COleDateTime nesnesini bu nesneye kopyalar ve VARTYPE değerini VT_DATE olarak ayarlar.
operator =(arrSrc) CByteArray nesnesini bu
COleVariantnesneye kopyalar.operator =(lbSrc) Bir CLongBinary nesnesini bu
COleVariantnesneye kopyalar.
Daha fazla bilgi için Bkz. Windows SDK'sında VARIANT ve VARENUM girdileri.
COleVariant::operator ==
Bu işleç iki değişken değerini karşılaştırır ve eşitse sıfır olmayan değer döndürür; aksi takdirde 0.
BOOL operator==(const VARIANT& varSrc) const;
BOOL operator==(LPCVARIANT pSrc) const;
COleVariant::operator <<, COleVariant::operator >>
veya COleVariant öğesine CArchive bir CdumpContext değer verir ve öğesinden COleVariantbir CArchive nesne ekler.
friend CDumpContext& AFXAPI operator<<(
CDumpContext& dc,
OleVariant varSrc);
friend CArchive& AFXAPI operator<<(
CArchive& ar,
COleVariant varSrc);
friend CArchive& AFXAPI operator>>(
CArchive& ar,
COleVariant& varSrc);
Açıklamalar
Ekleme COleVariant (<<) işleci, tanılama dökümünü ve arşive depolanmayı destekler. Ayıklama (>>) işleci bir arşivden yüklemeyi destekler.
COleVariant::SetString
Dizeyi belirli bir türe ayarlar.
void SetString(LPCTSTR lpszSrc, VARTYPE vtSrc);
Parametreler
lpszSrc
Yeni COleVariant nesneye kopyalanacak null olarak sonlandırılan bir dize.
VtSrc
Yeni COleVariant nesne için VARTYPE.
Açıklamalar
vtSrc parametresi VT_BSTR (UNICODE) veya VT_BSTRT (ANSI) olmalıdır.
SetString genellikle dizeleri ANSI olarak ayarlamak için kullanılır çünkü bir dize veya dize işaretçi parametresine sahip COleVariant::COleVariant oluşturucusunun varsayılan değeri UNICODE değildir.
UNICODE olmayan bir derlemedeki DAO kayıt kümesi, dizelerin ANSI olmasını bekler. Bu nedenle, nesneleri kullanan COleVariant DAO işlevleri için, UNICODE kayıt kümesi oluşturmuyorsanız, vtSrc VT_BSTRT (ANSI) olarak ayarlanmış oluşturucunun COleVariant::COleVariant( lpszSrc , vtSrc ) biçimini kullanmanız veya ANSI dizeleri oluşturmak için vtSrcSetStringVT_BSTRT olarak ayarlamanız gerekir. Örneğin, CDaoRecordset CDaoRecordset::Seek ve CDaoRecordset::SetFieldValue işlevleri nesneleri parametre olarak kullanırCOleVariant. DAO kayıt kümesi UNICODE değilse, bu nesneler ANSI olmalıdır.