Event Handling

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Event Handling.

Event handling is primarily supported for COM classes (C++ classes that implement COM objects, typically using ATL classes or the coclass attribute). For more information, see Event Handling in COM.

Event handling is also supported for native C++ classes (C++ classes that do not implement COM objects), however, that support is deprecated and will be removed in a future release. For more information, see Event Handling in Native C++.

Event handling supports single- and multithreaded usage and protects data from simultaneous multithread access. It also allows you to derive subclasses from event source or receiver classes and support extended event sourcing/receiving in the derived class.

Visual C++ includes attributes and keywords for declaring events and event handlers. The event attributes and keywords can be used in CLR programs and in native C++ programs.

TopicDescription
event_sourceCreates an event source.
event_receiverCreates an event receiver (sink).
__eventDeclares an event.
__raiseEmphasizes the call site of an event.
__hookAssociates a handler method with an event.
__unhookDissociates a handler method from an event.

C++ Language Reference
Keywords
Event Handling Samples

Show: