彙總
指示此物件彙總 CLSID 所指定的物件。
[ aggregates(
clsid,
variable_name
) ]
參數
clsid
指定可彙總物件的 CLSID。variable_name
插入變數的名稱。 這個變數包含 IUnknown 要彙總的物件。
備註
當套用至物件, 的彙總 C++ 屬性實作的物件正在進行彙總之外部包裝函式 (藉由指定clsid)。
這個屬性不能 coclass, progid,或 vi_progid 屬性 (或另一個屬性,表示其中一種) 也會套用到相同的項目。 如果使用任何的單一屬性時,會自動套用其他兩個。 比方說,如果 progid 被套用的話, vi_progid 和 coclass 也會套用。
ATL 專案
如果使用 ATL 專案中使用這個屬性,屬性的行為就會變更。 首先,下列項目會加入至目標物件的 COM 對應:
COM_INTERFACE_ENTRY_AUTOAGGREGATE_BLIND(_m_spAttrXXX, clsid)
第二個, DECLARE_GET_CONTROLLING_UNKNOWN 也會加入巨集。
範例
// 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;
};
需求
屬性內容
適用於 |
類別,struct |
可重複 |
是 |
必要的屬性 |
一或多項動作: coclass, progid,或 vi_progid。 |
無效的屬性 |
None |
如需有關屬性內容的詳細資訊,請參閱屬性內容。
請參閱
參考
COM_INTERFACE_ENTRY_AUTOAGGREGATE_BLIND