__raise
keyword
Emphasizes the call site of an event.
Note
Event attributes in native C++ are incompatible with Standard C++. They don't compile when you specify /permissive-
conformance mode.
Syntax
__raise
method-declarator
;
Remarks
From managed code, an event can only be raised from within the class where it's defined. For more information, see event
.
The keyword __raise
causes an error to be emitted if you call a non-event.
Note
A templated class or struct cannot contain events.
Example
// EventHandlingRef_raise.cpp
struct E {
__event void func1();
void func1(int) {}
void func2() {}
void b() {
__raise func1();
__raise func1(1); // C3745: 'int Event::bar(int)':
// only an event can be 'raised'
__raise func2(); // C3745
}
};
int main() {
E e;
__raise e.func1();
__raise e.func1(1); // C3745
__raise e.func2(); // C3745
}
See also
Keywords
Event handling
__event
__hook
__unhook
Component extensions for .NET and UWP