Udostępnij za pośrednictwem


Kumulowalne

Wskazuje, że klasa obsługuje agregacji.

[ aggregatable( 
   value
) ]

Parametry

  • wartość (opcjonalnie)
    Parametr wskazuje, kiedy mogą zostać zagregowane obiektu COM:

    • nigdy nie obiektu COM nie może być łączone.

    • dozwolone obiektu COM można utworzyć bezpośrednio lub mogą zostać zagregowane.Jest to wartość domyślna.

    • zawsze obiekt COM nie można utworzyć bezpośrednio i wyłącznie mogą zostać zagregowane.Gdy wywołanie CoCreateInstance dla tego obiektu, należy określić obiekt agregację IUnknown interfejsu (sterowanie IUnknown).

Uwagi

Kumulowalnych atrybut C++ ma taką samą funkcjonalność jak kumulowalnych MIDL atrybutu.Oznacza to, że kompilator będzie przekazywać kumulowalnych atrybutu poprzez do pliku wygenerowanego .idl.

Atrybut ten wymaga, aby coclass, progid, lub vi_progid atrybutu (lub inny atrybut, który oznacza jeden z tych) również być stosowane do tego samego elementu.Każdy pojedynczy atrybut jest używany, pozostałe dwie są stosowane automatycznie.Na przykład jeśli progid jest stosowany, vi_progid i coclass są również stosowane.

Projekty ATL

Jeśli ten atrybut jest używany w ramach projektu, który używa ATL, zmienia zachowanie atrybutu.Oprócz opisane wcześniej zachowanie atrybut dodaje również jeden z następujących makr do klasy docelowej:

Wartość parametru

Wstawiony makra

Nigdy nie

DECLARE_NOT_AGGREGATABLE

Dozwolone

DECLARE_POLY_AGGREGATABLE

Zawsze

DECLARE_ONLY_AGGREGATABLE

Przykład

// 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 {};

Wymagania

Atrybutu kontekstu

Stosuje się do

Klasa,struct

Powtarzalne

Nr

Wymagane atrybuty

Jeden lub więcej z następujących czynności: coclass, progid, lub vi_progid.

Nieprawidłowe atrybuty

Brak

Aby uzyskać więcej informacji na temat kontekstów atrybutu, zobacz Kontekstów atrybutu.

Zobacz też

Informacje

Aggregation

Inne zasoby

Atrybuty IDL

Atrybuty klas

Element TypeDef, Enum, Unii i struktura atrybutów

Attributes Samples