aggregatable
Указывает, что класс поддерживает агрегирование.
[ aggregatable(
value
) ]
Параметры
Значение (необязательно)
Параметр для указания того, когда COM-объект могут быть агрегированными.никогда Com-объекты не могут быть агрегированными.
разрешено COM-объект может быть создан непосредственно, либо он может быть агрегированными. Это значение по умолчанию.
всегда Com-объекты не может быть создан непосредственно, а может быть только статистическая обработка проводится. При вызове CoCreateInstance для данного объекта необходимо указать при выполнении статистической обработки объекта IUnknown интерфейс (наблюдение IUnknown).
Заметки
aggregatable Атрибут C++ имеет ту же функциональность, что и aggregatable атрибут MIDL. Это означает, что компилятор передает aggregatable атрибут до конца к созданному файлу idl.
Этот атрибут необходим CoClass" идентификатор progidили vi_progid атрибут (или другой атрибут, подразумевается одно из них) также были применены к одному элементу. Если отдельный атрибут используется, то остальные 2 автоматически применены. Например, если идентификатор progid применяет vi_progid и CoClass также применить.
Проекты ATL
Если этот атрибут используется в рамках проекта, использующий библиотеку ATL, расширения функциональности атрибута изменяется. В дополнение к ранее описанной в расширениях функциональности, атрибут также добавляет один из следующих макросов к классу целевого объекта:
Значение параметра |
Inserted макрос |
---|---|
Никогда |
|
Разрешено |
|
Всегда |
Пример
// 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 {};
Требования
Контекст атрибута
Применение |
класс" struct |
Repeatable |
Нет |
Обязательные атрибуты |
Одно или несколько из следующих значений: CoClass" идентификатор progidили vi_progid. |
Недопустимые атрибуты |
None |
Дополнительные сведения о контекстах атрибута см. в разделе Контексты атрибута.