CComDynamicUnkArray Sınıfı
Bu sınıf bir işaretçi dizisi IUnknown
depolar.
Sözdizimi
class CComDynamicUnkArray
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CComDynamicUnkArray::CComDynamicUnkArray | Oluşturucu. Koleksiyon değerlerini NULL ve koleksiyon boyutunu sıfır olarak başlatır. |
CComDynamicUnkArray::~CComDynamicUnkArray | Yok edici. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CComDynamicUnkArray::Add | Diziye bir IUnknown işaretçi eklemek için bu yöntemi çağırın. |
CComDynamicUnkArray::begin | Koleksiyondaki ilk IUnknown işaretçiye bir işaretçi döndürür. |
CComDynamicUnkArray::clear | Diziyi boşaltın. |
CComDynamicUnkArray::end | Koleksiyondaki son IUnknown işaretçiyi geçen işaretçiyi döndürür. |
CComDynamicUnkArray::GetAt | Belirtilen dizindeki öğesini alır. |
CComDynamicUnkArray::GetCookie | Belirli IUnknown bir işaretçiyle ilişkili tanımlama bilgisini almak için bu yöntemi çağırın. |
CComDynamicUnkArray::GetSize | Dizinin depolayabileceğiniz öğe sayısını döndürür. |
CComDynamicUnkArray::GetUnknown | Belirli bir tanımlama bilgisi ile ilişkili işaretçiyi IUnknown almak için bu yöntemi çağırın. |
CComDynamicUnkArray::Remove | Diziden bir IUnknown işaretçiyi kaldırmak için bu yöntemi çağırın. |
Açıklamalar
CComDynamicUnkArray
her biri bir bağlantı noktasındaki bir arabirim olan IUnknown
, dinamik olarak ayrılmış bir işaretçi dizisi içerir. CComDynamicUnkArray
IConnectionPointImpl şablon sınıfına parametre olarak kullanılabilir.
Başlangıç CComDynamicUnkArray
ve bitiş yöntemleri tüm bağlantı noktaları arasında döngü yapmak için kullanılabilir (örneğin, bir olay tetiklendiğinde).
Bağlantı noktası proxy'lerinin oluşturulmasını otomatikleştirme hakkında ayrıntılı bilgi için bkz . Nesneye Bağlantı Noktaları Ekleme.
Not
Not Sınıf CComDynamicUnkArray
, Bağlantı Noktaları içeren bir denetim oluşturulurken Sınıf Ekleme sihirbazı tarafından kullanılır. Bağlantı Noktası sayısını el ile belirtmek isterseniz, başvuruyu CComDynamicUnkArray
CComUnkArray<
olarak >
n olarak değiştirin; burada n, gereken bağlantı noktası sayısıdır.
Gereksinimler
Üst bilgi: atlcom.h
CComDynamicUnkArray::Add
Diziye bir IUnknown
işaretçi eklemek için bu yöntemi çağırın.
DWORD Add(IUnknown* pUnk);
Parametreler
Punk
Diziye IUnknown
eklenecek işaretçi.
Dönüş Değeri
Yeni eklenen işaretçiyle ilişkili tanımlama bilgisini döndürür. CComDynamicUnkArray::GetAt ile diziden işaretçiyi almak için bu tanımlama bilgisini kullanın.
Açıklamalar
Bu öğenin eklendiği konum, daha önce bu dizide çağrıldıysa Remove()
, doğrudan son eklenen öğeden sonra olması gerekmez. Eklenen işaretçiye güvenilir bir şekilde erişmek için döndürülen tanımlama bilgisini kullanın.
Dizinin boyutu daha fazla öğeyi barındıracak şekilde artırılabilir. Yeni boyutu almak için kullanın GetSize()
.
CComDynamicUnkArray::begin
Arabirim işaretçileri koleksiyonunun IUnknown
başına bir işaretçi döndürür.
IUnknown**
begin();
Dönüş Değeri
Arabirim işaretçisine yönelik bir IUnknown
işaretçi.
Açıklamalar
Koleksiyon, olarak IUnknown
yerel olarak depolanan arabirimlere yönelik işaretçiler içerir. Her IUnknown
arabirimi gerçek arabirim türüne yayınlar ve ardından bu arabirim üzerinden çağrırsınız. Önce arabirimi sorgulamanız gerekmez.
Arabirimi kullanmadan IUnknown
önce NULL olup olmadığını denetlemeniz gerekir.
CComDynamicUnkArray::clear
Diziyi boşaltın. Boyutu 0 olarak sıfırlar.
void clear();
CComDynamicUnkArray::CComDynamicUnkArray
Oluşturucu.
CComDynamicUnkArray();
Açıklamalar
Koleksiyon boyutunu sıfır olarak ayarlar ve değerleri NULL olarak başlatır. Yıkıcı, gerekirse koleksiyonu serbesttir.
CComDynamicUnkArray::~CComDynamicUnkArray
Yok edici.
~CComDynamicUnkArray();
Açıklamalar
Sınıf oluşturucu tarafından ayrılan kaynakları serbesttir.
CComDynamicUnkArray::end
Dizinin ayrılmış arabelleğindeki son öğeyi bir geçmişe işaret eden bir işaretçi döndürür.
Not: Bu, dizi kapasiteye doldurulmayabileceği için son eklenen işaretçinin konumunda end()-1
olacağının garanti edilmediği anlamına gelir.
IUnknown**
end();
Dönüş Değeri
Arabirim işaretçisine yönelik bir IUnknown
işaretçi.
CComDynamicUnkArray::GetAt
Belirtilen dizindeki öğesini alır.
IUnknown* GetAt(int nIndex);
Parametreler
nIndex
Alınacak öğenin dizini.
Dönüş Değeri
Daha önce bir öğe eklenip bu dizinde mevcutsa IUnknown arabirimine yönelik bir işaretçi; aksi takdirde NULL
.
CComDynamicUnkArray::GetCookie
Belirli IUnknown
bir işaretçiyle ilişkili tanımlama bilgisini almak için bu yöntemi çağırın.
DWORD WINAPI GetCookie(IUnknown** ppFind);
Parametreler
ppFind
İlişkili IUnknown
tanımlama bilgisinin gerekli olduğu işaretçi.
Dönüş Değeri
İşaretçiyle IUnknown
ilişkilendirilmiş tanımlama bilgisini veya eşleşen IUnknown
bir işaretçi bulunamazsa sıfırı döndürür.
Açıklamalar
Aynı IUnknown
işaretçinin birden fazla örneği varsa, bu işlev ilk işaretçi için tanımlama bilgisini döndürür.
CComDynamicUnkArray::GetSize
Dizinin ayrılmış kapasitesini döndürür.
Not: Bu, dizideki NULL olmayan öğelerin sayısıyla aynı değildir.
int GetSize() const;
Dönüş Değeri
Dizinin depolayabileceğiniz öğe sayısı. GetSize() == end() - begin()
.
CComDynamicUnkArray::GetUnknown
Belirli bir tanımlama bilgisi ile ilişkili işaretçiyi IUnknown
almak için bu yöntemi çağırın.
IUnknown* WINAPI GetUnknown(DWORD dwCookie);
Parametreler
dwCookie
İlişkili IUnknown
işaretçinin gerekli olduğu tanımlama bilgisi.
Dönüş Değeri
İşaretçiyi IUnknown
döndürür veya eşleşen tanımlama bilgisi bulunmazsa NULL döndürür.
CComDynamicUnkArray::Remove
Diziden bir IUnknown
işaretçiyi kaldırmak için bu yöntemi çağırın.
Diğer tüm öğeler değiştirilmez ve dizinlerini ve tanımlama bilgisini korur.
BOOL Remove(DWORD dwCookie);
Parametreler
dwCookie
Diziden kaldırılacak işaretçiye başvuran IUnknown
tanımlama bilgisi.
Dönüş Değeri
İşaretçi kaldırılırsa TRUE döndürür; aksi takdirde YANLIŞ.