다음을 통해 공유


event_source 특성

이벤트 소스를 만듭니다.

참고 항목

네이티브 C++의 이벤트 특성은 표준 C++와 호환되지 않습니다. /permissive- 규칙 모드를 지정하면 컴파일되지 않습니다.

구문

[ event_source(type, optimize=[speed | size], decorate=[true | false]) ]

매개 변수

type
다음 값 중 하나의 열거형:

  • native - 관리되지 않는 C/C++ 코드용(관리되지 않는 클래스에 대한 기본값).

  • com - COM 코드용. 을 사용할 때 type=com사용합니다.coclass 이 값을 사용하려면 다음 헤더 파일을 포함해야 합니다.

    #define _ATL_ATTRIBUTES
    #include <atlbase.h>
    #include <atlcom.h>
    

optimize
형식이면 native클래스의 모든 이벤트에 대해 4바이트(최소)의 스토리지가 있음을 나타내거나 optimize=speed (기본값) 스토리지의 4 * (# 이벤트) 바이트가 있음을 나타내도록 지정할 optimize=size수 있습니다.

decorate
형식이면 native병합된(.mrg) 파일의 확장된 이름이 바깥쪽 클래스 이름을 포함하지 않아야 함을 나타내도록 지정할 decorate=false수 있습니다. /Fx 을 사용하면 파일을 생성 .mrg 할 수 있습니다. decorate=false기본값인 경우 병합된 파일에서 정규화된 형식 이름이 생성됩니다.

설명

C++ 특성은 event_source 적용되는 클래스 또는 구조체가 이벤트 원본이 되도록 지정합니다.

event_source는 특성 및 키워드와 __event 함께 event_receiver 사용됩니다. 이벤트 수신기를 만드는 데 사용합니다 event_receiver . 메서드를 이벤트로 지정하려면 이벤트 소스 내 해당 메서드에 __event 를 사용합니다.

참고 항목

템플릿 기반 클래스 또는 구조체에 event를 포함시킬 수 없습니다.

요구 사항

특성 컨텍스트
적용 대상: class, struct
반복 가능 아니요
필수 특성 type=com이면 coclass입니다.
잘못된 특성 None

자세한 내용은 특성 컨텍스트를 참조하세요.

참고 항목

컴파일러 특성
event_receiver
__event
__hook
__unhook
클래스 특성