Sdílet prostřednictvím


agregovatelné

Označuje, že třída podporuje agregaci.

[ aggregatable( 
   value
) ]

Parametry

  • Hodnota (volitelné)
    Parametr označující, kdy lze agregovat objektu COM:

    • nikdy objektu COM nemůže sečtou.

    • povoleno objektu COM mohou být vytvářeny přímo nebo lze agregovat.Tato možnost je výchozí.

    • vždy COM objekt nelze vytvořit přímo a pouze seskupeny.Při volání CoCreateInstance pro tento objekt je nutné zadat totožný objekt IUnknown rozhraní (řízení IUnknown).

Poznámky

Agregovatelné C++ atribut má stejné funkce jako agregovatelné jazyk MIDL atribut.To znamená, že kompilátor předá agregovatelné pomocí atributu .idl generovaného souboru.

Tento atribut vyžaduje, aby coclass, progid, nebo vi_progid atributu (nebo jiný atribut, který vyplývá z nich) také u téhož prvku.Pokud je použit libovolný jeden atribut, další dvě jsou automaticky použity.Například pokud progid je vi_progid a coclass jsou také použity.

Projekty ATL

Pokud tento atribut je použit v rámci projektu, který používá ATL chování změny atributů.Vedle dříve popsané chování atribut také přidá jeden následující makra do cílové třídy:

Hodnota parametru

Vložené makro.

Nikdy

DECLARE_NOT_AGGREGATABLE

Povoleno

DECLARE_POLY_AGGREGATABLE

Vždy

DECLARE_ONLY_AGGREGATABLE

Příklad

// cpp_attr_ref_aggregatable.cpp
// compile with: /LD
#define _ATL_ATTRIBUTES
#include "atlbase.h"
#include "atlcom.h"

[module(name="MyModule")];

[ coclass, aggregatable(allowed),
  uuid("1a8369cc-1c91-42c4-befa-5a5d8c9d2529")]
class CMyClass {};

Požadavky

Atribut kontextu

V aplikacích

Třída,struct

Opakovatelné

Ne

Požadované atributy

Jeden nebo více z následujících: coclass, progid, nebo vi_progid.

Neplatné atributy

Žádná

Další informace o kontextech atribut, viz Kontexty atribut.

Viz také

Referenční dokumentace

Aggregation

Další zdroje

Atributy IDL

Atributy třídy

Definice TypeDef, Enum, unie a struktura atributy

Attributes Samples