Aracılığıyla paylaş


CAdapt sınıfı

Bu şablon, sarma nesnesinin adres dışında bir şey dönmek için adres, işleç yeniden Tanımla'yı sınıfları için kullanılır.

template <
   class T
>
class CAdapt

Parametreler

  • T
    Uyarlanmış türü.

Üyeler

bs6acf5x.collapse_all(tr-tr,VS.110).gifOrtak Oluşturucusu

Ad

Description

CAdapt::CAdapt

Oluşturucu.

bs6acf5x.collapse_all(tr-tr,VS.110).gifOrtak İşleçler

Ad

Description

CAdapt::operator const t &

Döndürür bir const için başvuru m_T.

CAdapt::operator t &

Bir başvuru verir m_T.

CAdapt::operator <

Bir nesne uyarlanmış türü ile karşılaştırır m_T.

CAdapt::operator =

Bir nesne için uyarlanmış türü atar m_T.

CAdapt::operator ==

Bir nesne uyarlanmış türü ile karşılaştırır m_T.

bs6acf5x.collapse_all(tr-tr,VS.110).gifOrtak veri üyeleri

Ad

Description

CAdapt::m_T

Uyarlanan veriler.

Notlar

CAdaptAdres, işleç yeniden Tanımla'yı sınıfları kaydırmak için kullanılan basit bir şablon olan (operator &) nesnenin adresi dışında bir şey döndürmek için.Bu tür sınıfları örnekler ATL's CComBSTR, CComPtr, ve CComQIPtr sınıfları ve Derleyici com Destek sınıfı _com_ptr_t.Tüm Bu sınıflar adresi, işlecin dönüş adresi veri üyeleri birinin yeniden (bir BSTR , case, CComBSTRve diğer sınıfların söz konusu olduğunda bir arabirim işaretçisi).

CAdaptkişinin birincil rolü olan sýnýf tarafýndan tanýmlanan adres, işleç gizlemek için T, henüz yine uyarlanmış sınıfının özelliklerini korur.CAdaptBu rol, bir ortak üye tutarak aradığında m_T, tür Tve dönüştürme işleçleri, Karşılaştırma işleçlerini ve kopyalama kurucusunu, specializations izin verecek şekilde tanımlayarak CAdapt türündeki nesneler oldukları gibi ele T.

Bağdaştırıcı sınıfı CAdapt (stl kapsayıcı sınıfları gibi) birçok kapsayıcı sınıfı adres ın işlecini kullanarak kendi kapsanan nesneleri adreslerini elde etmek bekleriz için yararlıdır.Adres, işleç şemadaki genellikle derleme hataları neden ve bu kap unadapted türüyle kullanılmasını engelleyerek bu gereksinimi confound.CAdaptBu sorunlara geçici bir yol sağlar.

Genellikle, kullanacağınız CAdapt saklamak istediğinizde CComBSTR, CComPtr, CComQIPtr, ya da _com_ptr_t gibi stl kapsayıcı içinde nesne bir list.Bu gibi bu türdeki nesnelerin saklayamazsınız:

std::list< CComBSTR > m_List;

Bunun yerine, bu bağdaştırıcı nesneleri depolamanız gerekir:

std::list< CAdapt< CComBSTR > > m_List;

Gereksinimler

Başlık: atlcomcli.h

Ayrıca bkz.

Diğer Kaynaklar

atl sınıfına genel bakış