toplamları
Nesne CLSID değeri tarafından belirtilen nesne toplayan gösterir.
[ aggregates(
clsid,
variable_name
) ]
Parametreler
clsid
Bir araya toplanabilir nesnesinin CLSID değerini belirtir.variable_name
Eklenecek olan değişken adı.Bu değişken içeren IUnknown toplanan nesnesi.
Notlar
Bir nesneye uygulandığında toplamları C++ öznitelik uygulayan toplanan nesnesi için bir dış sarıcı (tarafından belirtilen clsid).
Bu öznitelik gerektiren coclass, ProgID, veya vi_progid özniteliği (veya bunlardan anlaşılacağı başka bir öznitelik) de uygulanacağını aynı öğe.Tek bir öznitelik kullanýlmýþsa, diğer ikisi otomatik olarak uygulanır.Örneğin, ProgID uygulanan vi_progid ve coclass de uygulanır.
atl projeleri
Bu öznitelik atl kullanan bir proje içinde kullanılırsa, öznitelik davranışını değiştirir.İlk olarak, aşağıdaki girdi hedef nesnesini com haritasını eklenir:
COM_INTERFACE_ENTRY_AUTOAGGREGATE_BLIND(_m_spAttrXXX, clsid)
İkinci, DECLARE_GET_CONTROLLING_UNKNOWN makro de eklenir.
Örnek
// cpp_attr_ref_aggregates.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"
// requires 'aggregatable.dll'
// see aggregatable attribute to create 'aggregatable.dll'
class DECLSPEC_UUID("1a8369cc-1c91-42c4-befa-5a5d8c9d2529") CMyClass;
[module (name="MYObject")];
[object, uuid("ab006d85-e754-47c5-9ef4-2744ff32a20c")]
__interface IObject
{
};
[ coclass, aggregates(__uuidof(CMyClass)),
uuid("91cb2c06-8931-432a-baac-206e55c4edfb")]
struct CObject : IObject
{
int i;
};
Gereksinimler
Öznitelik içerik
Uygulama alanı |
sınıf,struct |
Yinelenebilir |
Evet |
Gerekli öznitelikleri |
Aşağıdakilerden en az biri: coclass, ProgID, veya vi_progid. |
Geçersiz öznitelik |
None |
Öznitelik içerikleri hakkında daha fazla bilgi için bkz: Öznitelik içerikleri.
Ayrıca bkz.
Başvuru
COM_INTERFACE_ENTRY_AUTOAGGREGATE_BLIND