aggregatable
클래스가 집계를 지원한다는 것을 나타냅니다.
구문
[ aggregatable(value) ]
매개 변수
value
(선택 사항) COM 개체를 집계할 수 있는 시기를 나타내는 매개 변수입니다.
never
COM 개체를 집계할 수 없습니다.allowed
COM 개체를 직접 만들거나 집계할 수 있습니다. 기본값입니다.always
COM 개체는 직접 만들 수 없으며 집계만 가능합니다. 이 개체를 호출CoCreateInstance
할 때 집계 개체의IUnknown
인터페이스(제어IUnknown
)를 지정해야 합니다.
설명
집계 가능한 C++ 특성에는 집계 가능한 MIDL 특성과 동일한 기능이 있습니다. 즉, 컴파일러가 집계 가능한 특성을 생성된 .idl 파일로 전달합니다.
이 특성을 사용하려면 coclass, progid또는 vi_progid 특성(또는 이 중 하나를 암시하는 다른 특성)을 동일한 요소에 적용해야 합니다. 단일 특성을 사용하는 경우 다른 두 특성도 자동으로 적용됩니다. 예를 들어 적용 vi_progid
되고 coclass
적용된 경우 progid
입니다.
ATL 프로젝트
ATL을 사용하는 프로젝트 내에서 이 특성을 사용하는 경우 특성의 동작이 변경됩니다. 이 특성은 앞에서 설명한 동작 외에도 다음 매크로 중 하나를 대상 클래스에 추가합니다.
매개 변수 값 | 삽입된 매크로 |
---|---|
Never |
DECLARE_NOT_AGGREGATABLE |
Allowed |
DECLARE_POLY_AGGREGATABLE |
Always |
DECLARE_ONLY_AGGREGATABLE |
예시
// 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 {};
요구 사항
특성 컨텍스트 | 값 |
---|---|
적용 대상: | class , struct |
반복 가능 | 아니요 |
필수 특성 | 다음 중 하나 이상: coclass , progid 또는 vi_progid . |
잘못된 특성 | None |
특성 컨텍스트에 대한 자세한 내용은 특성 컨텍스트를 참조하세요.